2009-08-06 17 views
0

我們正在計劃擴展一個現有的ASP.NET應用程序(一個真正巨大的應用程序),以使其具有一個更加清晰的用戶界面。其中一個要求是有一種方法來執行服務器端代碼而無需回傳(例如,假設用戶點擊鏈接或將鏈接懸停在鏈接上,會彈出一個執行服務器端代碼或調用數據庫的彈出窗口)在ASP.NET應用程序中使用漂亮的用戶界面的有效技術是什麼?

我們計劃添加更多與雅虎或谷歌自定義頁面的行爲緊密結合的功能。

UpdatePanels是一種方法,或者應該使用JavaScript來實現它的很多方法嗎?其中一個主要要求是保持頁面儘可能輕並具有良好的性能。我們不打算使用任何第三方組件。

建議哪些技術可以幫助我們在將來添加UI重要功能?

編輯:謝謝大家。看來,採取的方法是使用JS庫(如JQuery和AJAX)(從最初研究PageMethod/WebMethod的方式)? 還有更多建議嗎?

+0

使用AJAX是滿足回發要求的最簡單方法。 jQuery對於其他一些客戶端功能可能很有用,只要記住有很多jQuery的插件可以使用它。 – 2009-08-07 14:19:39

+0

這裏不鼓勵使用插件和第三方組件(思想是,我們在內部構建它,我們更適合根據需要進行調整)。看起來JQuery/AJAX是一個非常類似於.NET已經支持的模型? (在ScriptManager中設置啓用頁面方法屬性可以讓我們在服務器端執行靜態方法,我是正確的還是兩個模型之間有什麼不同? – Nick 2009-08-07 16:57:49

回答

2

我認爲UpdatePanels其實很笨重。 (其實,我認爲現在ASP.NET已經轉移到了ASP.NET MVC,所以ASP.NET非常笨重)。如果頁面的交互性很強,我建議使用某種javascript框架,比如jQuery,Dojo,MooTools等,這樣可以讓你輕鬆地進行AJAX以及管理客戶端的用戶體驗。 MS正在向Visual Studio發佈jQuery,並承諾會支持它,所以你在做出決定時可能會考慮這一點。

+0

JQuery/AJAX是一種輕量級的方式嗎? – Nick 2009-08-07 02:37:26

+0

Both解決方案使用AJAX,但UpdatePanel既不易配置也難以在我看來使用jQuery Ajax調用WebMethods更加靈活和容易基礎jQuery框架不是很大,可以通過Google API下載,所以你可以利用他們的內容交付網絡 – tvanfosson 2009-08-07 02:57:35

+0

現有的應用程序大量使用代碼隱藏方法(或基類中的方法等)。PageMethods/WebMethods僅支持靜態方法,這是從我們如何做事情的範式轉變在這裏,我們沒有網絡服務,並使用常規的3層架構 – Nick 2009-08-07 16:52:39

0

Stephen Walter did a great talk關於下一個版本的ASP.NET Ajax 4.0。這不是一個直接的解決方案,但看到微軟在Ajax框架中的位置很有趣。

+0

我們目前在3.5框架,通常會在升級前等待一段時間。所以,我想在我們轉向.NET 4.0之前還需要一段時間。感謝您的鏈接。非常豐富。 – Nick 2009-08-07 02:36:22

0

ASP.NET AJAX比UpdatePanel還有很多,並且可以在沒有大量JavaScript工作的情況下完成大量的工作。在通過線路發送數據量方面,UpdatePanel的效率非常低。與所有內容一樣,只在需要時才進行優化 - 但請記住,UpdatePanel是查找速度降低的第一個位置之一。

+0

的確,我們使用updatepanel構建了一個巨大的功能集,並且它的性能有問題。看來,我們必須轉向客戶端技術以實現我們正在尋求的行爲。 – Nick 2009-08-07 16:59:50

0

只是爲了給你一個不同於其他人的答案:爲什麼不試試silverlight?

+0

不幸的是,這不是一個選項。這個應用程序是巨大的嘗試將它遷移到使用SilverLight技術的方式。 – Nick 2009-08-07 17:17:21

相關問題