我在過去的兩年中一直使用ASP.NET(C#)。我學到了很多,但仍然有很多東西要學:)使用Web用戶控件而不是Web窗體
我用MasterPages,「Web用戶控件」的東西像頭,導航,頁腳等
一兩件事,我從來沒有真正理解是爲您的內容和邏輯使用「Web用戶控制」的做法;
Home.aspx ------ Home.ascx
AboutUs.aspx ----- AboutUs.ascx
Ordering.aspx ---- Ordering.acsx
我在過去幾個月裏一直在使用這個結構的幾個項目。我知道這實際上是很常見的做法,但我並不真正瞭解所有的好處。
我記得當我嘗試過這種方法之前,並最終有像Gridview的控件有可怕的viewstate問題......一旦我把所有的邏輯,並將其放置到一個.aspx頁面一切工作正常。
我現在意識到,也許我需要在GridView添加到視圖狀態集合......但這只是鞏固了我的困難轉換爲理解爲什麼使用這種方法 - 定的視圖狀態的問題。
我完全理解'網頁用戶控件'與頭部,菜單,頁腳等相關的優點......任何涉及重複的地方,但我見過的項目都有相當具體的頁面/控件 - 在換句話說,它不太可能在其他地方重用 - aspx頁面只包含一個帶有內容和邏輯的控件(.ascx),它只會在該頁面上使用,而不會在其他地方使用。
忽略「代碼重用」,這是否方式提供什麼好處?
Brian,在Web控件中放置類似評論表單的東西總是很有意義,我將所有這樣的控件放置在控件中......也許這些項目我已經看過整個頁面嵌套在一個Web控件中是不是做事情的方式? ....如果Home.aspx包含多個控件,如「HomepageSlideshow.ascx」,「TwitterFeed.ascx」,這將更有意義。 – Dal 2010-06-24 13:10:31
@Dal,正好。雖然技術上不同的頁面和網頁用戶控件基本上表現得非常非常類似,並且需要有一個真正的目的,以便您描述的方法已被採用。沒有進一步的細節,沒有明顯的好處 – 2010-06-24 13:14:09