服務熱線
153 8323 9821
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="FileList.aspx.cs" 批量替換成 CodeFile="FileList.aspx.cs"
不同點還有:
直接建立網站,沒有命名空間,有幾個特殊文件夾如App_code文件夾不能直接在網站項目里建立,但可以手動添加然后包含到項目里面來。
直接建立的網站解決方案不在網站的目錄下,而是在vs默認的目錄,一般是在我的文檔中的vs目錄下的project中,可以手動拷貝過來
要使用WebApplication程序 我們需要安裝 Visual Studio 2005 Team Suite CHS 補丁這樣才能把網站項目轉換成為Web應用程序.
web程序同一般的程序有些不一樣,vs不必為它們建立工程(project)文件,所以也可以稱為無工程開發(projectless development),目的是可以保證站點的目錄清晰,不亂,有助于web程序最后的配置,可以完全將整個的目錄簡單的拷貝即可,因為沒有多余的文件。同時,無工程開發可以方便團隊開發,因為各自的開發文件不需要同步。在vs中同樣還有基于工程的web開發,可以稱為web工程(web projects),實際是這是以前的開發模式,存在的目的,
一是可能需要遷移以前開發的web工程到vs2005下,
二是有時需要在一個站點中包括多個工程,
三是web工程可以靈活的處理站點的資源文件,比如大量的圖片,在開發時,可以不包含到工程中,四是如果使用MSBuild工具,則必須使用工程文件