WebApplication程式設計模型的優點
●網站編譯速度快,使用了增量編譯模式,僅僅只有檔案被修改後,這部分才會被增量編譯進去。
●產生的程序集
WebSite:產生隨機的程序集名,需要透過插件WebDeployment才可以產生單一程序集
WebApplication:可以指定網站專案產生單一程序集,因為是獨立的程序集,所以和其他項目一樣可以指定應用程式集的名稱、版本、輸出位置等資訊
●可以將網站拆分成多個項目以方便管理
●可以從專案中和原始碼管理中排除一個檔案
●方便的支援VSTS的Team Build方便每日建置
●更強大的程式碼檢查功能,並且檢查策略受原始碼控制
●可以對編譯前後進行自行規定的處理
●對App_GlobalResources 的Resource說的,還沒了解過)
●直接升級使用VS2003構建的大型系統
WebSite程式設計模型的優點
●動態編譯該頁面,馬上可以看到效果,不用編譯整個站點(主要優勢)
●同上,可以使錯誤的部分和使用的部分不相干擾(可以要求只有編譯通過才能簽入)
●可以每個頁面產生一個程序集(一般不會採用這種方式)
●可以把一個目錄當做一個Web應用程式來處理,直接複製檔案就可以發布,不需要專案檔(適合小站點)
●可以把頁面也編譯到程式集中(應該用不到,而且WebApplication也可以透過WebDeployment插件來實現)
兩種程式設計模型的互相轉換
VS2005 SP1內建了轉換程序,可以非常方便的從WebSite轉換到WebApplication
只需要複製文件,右鍵執行「轉換為Web應用程式」即可。
未查到有專門的反向轉換工具,但比較後發現如果轉換也非常簡單。
刪除所有*.designer.cs
將*.aspx、*.ascx、*.master頁面檔案中的 Codebehind="******.aspx.cs" 批次替換成 CodeFile="***** *.aspx.cs"
這樣就可以轉換回來了