這是我多次問自己的問題。我的公司使用WebForms,並始終開始開發一個新的應用程序,我的問題是管理控件狀態。對於控制狀態,我的意思是:「如果這個ListBox是空的,禁用這個按鈕,如果這個GridView處於編輯模式並且有一行被選中,禁用該文本框,如果按下該按鈕,則重新填充DetailsView等。」通常,當我完成對WebForms應用程序的編碼時,我寫了很多代碼來控制同一頁中的所有這些控件狀態,並且代碼很混亂且容易出錯。是否有任何技術人員可以申請改進和訂購頁面代碼(例如,分發給其他人員)?有沒有更好的方式來使用WebForms?
1
A
回答
2
我見過在頁面狀態使用MVP (Model-View-Presenter) pattern控制的WebForms代碼的一些例子。
MVP模式是MVC模式的一種變體,您可以通過Presenter類來控制頁面的狀態。它允許您將控制狀態的代碼提取到可測試和可重用的類中。
如果您使用「傳統」WebForms一段時間,轉向MVP模式可能具有挑戰性,但如果您做得對,它會爲您提供更清晰的代碼。
上WebForms和MVP的老,但好的文章可以在這裏找到:http://msdn.microsoft.com/en-us/magazine/ff955232.aspx
你也應該谷歌的概念,也有關於這個問題在那裏的許多文章。 :-)
2
您可以使用自定義userControls使其更清潔。
它的可重用性和代碼的邏輯是不是在你的「主」頁面
相關問題
- 1. 有沒有更好的方式來使用jsx內的條件?
- 2. 有沒有更好的方式來使用jQuery切換
- 3. 有沒有更好的方式來重複使用Matplotlib地塊?
- 4. 有沒有更好的方式來創建異步更新而不使用setInterval?
- 5. 有沒有更好的方式來使用分派器更新UI元素?
- 6. 有沒有更好的方式達特
- 7. 有沒有更好的方法來實現這個使用Perl?
- 8. 有沒有更好的方法來使用Youtube PHP API
- 9. 在CakePHP中,有沒有更好的方法來使用AES_DECRYPT?
- 10. 有沒有更好的方法來使用urlopen做csv/namedtuple?
- 11. 有沒有更好的方法來使用SQL查找anagrams?
- 12. 有沒有更好的方式來處理Json.Net的編碼值?
- 13. 有沒有更好的方式來設置IntelliJ下的ScalaStyle?
- 14. 有沒有更好的方式來檢索我的設置?
- 15. 有沒有更好的方式來跟蹤訂戶的變化?
- 16. 有沒有更好的方式來消毒輸入與JavaScript?
- 17. 學習Python,有沒有更好的方式來寫這個?
- 18. 有沒有更好的方式來委派枚舉?
- 19. SSRS - 有沒有更好的方式來做這個表達?
- 20. 有沒有更好的方式來寫str(len(myList))?
- 21. 有沒有更好的方式來建立這個joomla網址?
- 22. 有沒有更好的方式來編寫這段代碼?
- 23. 有沒有更好的方式來寫在jQuery中?
- 24. 有沒有更好的方式來做jquery製表符?
- 25. 有沒有更好的方式來獲取內容
- 26. 有沒有更好的方式來寫這個(集合)助手
- 27. 有沒有更好的方式來寫這個選擇查詢
- 28. 有沒有更好的方式來獲取這些數據?
- 29. 有沒有更好的方法來格式化多個事件?
- 30. 有沒有更好的方式來做到這一點鏈接