日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

【转】asp.net中的WebApplication(web应用程序)和WebSite(网站)

發布時間:2023/12/19 asp.net 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【转】asp.net中的WebApplication(web应用程序)和WebSite(网站) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

【轉】asp.net中的WebApplication(web應用程序)和WebSite(網站)

web application是MS在發布VS2005之后追加的SP1擴展包里的一種新的Web模式,WebApplication編譯時忽略了頁面中代碼的檢查,不需要做分析,將這些任務交給了運行時。WebSite的優勢在于可以單個頁面獨自編譯,這對大項目而言是一個相當大的優勢,二者的直觀區別在于,對每一個aspx頁面文件,WebApplication在有對應cs文件的同時還擁有designer.cs文件,baidu了一下。

WebApplication編程模型的優點:
●網站編譯速度快,使用了增量編譯模式,僅僅只有文件被修改后,這部分才會被增量編譯進去。
●生成的程序集
WebSite:生成隨機的程序集名,需要通過插件WebDeployment才可以生成單一程序集
WebApplication:可以指定網站項目生成單一程序集,因為是獨立的程序集,所以和其他項目一樣可以指定應用程序集的名字、版本、輸出位置等信息
●可以將網站拆分成多個項目以方便管理
●可以從項目中和源代碼管理中排除一個文件
●支持VSTS的Team Build方便每日構建
●更強大的代碼檢查功能,并且檢查策略受源代碼控制
●可以對編譯前后進行自己規定的處理
●對App_GlobalResources 的Resource強類支持
●直接升級使用VS2003構建的大型系統

WebSite編程模型的優點:
●動態編譯該頁面,馬上可以看到效果,不用編譯整個站點(主要優勢)
●同上,可以使錯誤的部分和使用的部分不相干擾
●可以每個頁面生成一個程序集
●可以把一個目錄當做一個Web應用來處理,直接復制文件就可以發布,不需要項目文件
●可以把頁面也編譯到程序集中

兩種編程模型的互相轉換:

VS2005 SP1內置了轉換程序,可以非常方便的從WebSite轉換到WebApplication只需要復制文件,右鍵執行“轉換為Web應用程序”即可。
總之,大網站比較適合用WebApplication項目,小網站比較適合用WebSite項目

?

下面的表格列出了Web Application 和 Web Site 的重要區別。

?

情況

Web Application Project

Web Site Project

工程定義

?

只有在 Web Application的解決方案中引用的文件才是項目的一部分。這些文件也顯示在解決方案資源管理器中,并在生成期間進行編譯。由于存在項目文件,因此有些方案更加容易實現。例如,可以將一個 ASP.NET 應用程序細分為多個 Visual Studio 項目。還可以輕松地從項目和源代碼中排除文件。

Web site 使用文檔結構管理項目文件。他不包括項目文件,文件夾中的所有文件都是項目的一部分

適用于現存不包含項文件的網站目錄。

?

編譯和生成輸出

項目中所有的程序代碼文件,和獨立的文件都被編譯成為一個程序集,保存在bin文件夾中,可以指定程序集的名字、版本、輸出位置等信息

在Web Site 項目中使用生成命令時,并不會生成程序集 ,而只是對Web Site進行驗證 。在運行Web Site的時候,由asp.net的動態編譯部署的頁面,類源文件。

同時也可以對站點進行預編譯以提高性能,在預編譯中使用的是和動態編譯同樣的技術。

Asp.net預編譯有2中模式. batch mode (the default) and fixed-names mode. batch mode 中生成一個程序集。fixed mode 每個頁面,用戶控件都生成獨立的程序集。

開發

?

在需要運行和調試程序之前需要進行編譯整個項目,但是通常Web Application編譯速度很快,因為使用了增量編譯模式,僅僅只有文件被修改后,這部分才會被增量編譯進去。

由于使用了動態編譯機制,并且編譯到不同的程序集,所以訪問或者調試特定頁面時,不需要編譯整個項目編譯成功。

生成命令會對整個項目進行驗證,但是速度較慢,所以建議在開發和調試的過程中,僅使用編譯當前頁面。

部署

由于所以代碼文件都生成為一個程序集,所以只需要把程序集和.aspx等頁面文件部署到服務器上。

.aspx文件只有在被瀏覽器訪問到的時候才進行編譯。

每次更新程序集的時候,相當于替換了所有的頁面代碼.

使用發布命令可以把.aspx文件和后臺代碼文件都編譯到程序集中,如果選擇了updateable publish option 時,只是對后臺代碼進行編譯 。

默認模式會針對每個文件夾生成一個程序集.固定名稱模式,會針對每個頁面,控件生成一個程序集 ,不過可能造成存儲空間的額外負擔。

從Visual Studio .NET 2003 升級

由于和.net 2003工作原理相同,基本不需要太多的操作。

需要使用升級向導,并且需要其他的一些額外操作。

轉載于:https://www.cnblogs.com/aaa6818162/archive/2009/05/09/1453141.html

總結

以上是生活随笔為你收集整理的【转】asp.net中的WebApplication(web应用程序)和WebSite(网站)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。