designer.cs 是窗體設計器生成的代碼文件,作用是對窗體上的控件做初始化工作(在函數InitializeComponent()中)VS2003以前都把這部分代碼放到窗體的cs文件中,由於這部分代碼一般不用手工修改,在VS2005以后把它單獨分離出來形成一個designer.cs文件與窗體對應。這樣cs文件中剩下的代碼都是與程序功能相關性較高的代碼利於維護。
我用vs2008創建的項目為何沒有.aspx.designer.cs文件呢?怎么配置才能顯示呢?
web項目有兩種, 一種website是不生成designer.cs的,另一種web application才生成這個文件,這么一說,可能有網友不太理解,下面向大家簡單介紹一下VS2005中WebSite和WebApplicationd的區別,希望能夠對大家有所幫助。
WebApplication編程模型的優點:
●網站編譯速度快,使用了增量編譯模式,僅僅只有文件被修改后,這部分才會被增量編譯進去。
●生成的程序集
WebSite:生成隨機的程序集名,需要通過插件WebDeployment才可以生成單一程序集WebApplication:可以指定網站項目生成單一程序集,因為是獨立的程序集,所以和其他項目一樣可以指定應用程序集的名字、版本、輸出位置等信息
●可以將網站拆分成多個項目以方便管理
●可以從項目中和源代碼管理中排除一個文件
●支持VSTS的Team Build方便每日構建
●更強大的代碼檢查功能,並且檢查策略受源代碼控制
●可以對編譯前后進行自己規定的處理
●對App_GlobalResources 的Resource強類支持
●直接升級使用VS2003構建的大型系統
WebSite編程模型的優點:
●動態編譯該頁面,馬上可以看到效果,不用編譯整個站點(主要優勢)
●同上,可以使錯誤的部分和使用的部分不相干擾
●可以每個頁面生成一個程序集
●可以把一個目錄當做一個Web應用來處理,直接復制文件就可以發布,不需要項目文件
●可以把頁面也編譯到程序集中
兩種編程模型的互相轉換:
VS2005 SP1內置了轉換程序,可以非常方便的從WebSite轉換到WebApplication
只需要復制文件,右鍵執行“轉換為Web應用程序”即可。
未查到有專門的反向轉換工具,但比較后發現如果轉換也非常簡單。
*.designer.cs
*.aspx
*.ascx
*.master
刪除所有*.designer.cs
將*.aspx、*.ascx、*.master頁面文件中的 Codebehind="FileList.aspx.cs" 批量替換成 CodeFile="FileList.aspx.cs"
總之,大網站比較適合用WebApplication項目,小網站比較適合用WebSite項目。