新建Web网站与新建Web应用程序的区别
為什么80%的碼農都做不了架構師?>>> ??
在Visual Studio 2010中,除了可以使用創建Web應用程序的方式來構建自己的Web項目之外,還可以通過創建Web網站的方式來構建Web項目。
其中,Web網站的創建方法:打開Visual Studio 2010主窗體,在工具欄里選擇“New”|“Web Site”命令,在彈出的New Web Site窗體里可以通過“ASP.NET Web Site”和“Empty Web Site”這兩種模板來創建自己的Web網站。
其實,微軟早在Visual Studio 2005的時候就提供了新建Web網站的功能,它是完全面向Web開發的。與Web應用程序相比,它們存在如下不同之處:
1. 從整體結構來看
Web應用程序和一般的Winform程序沒有什么區別,它們都是按項目進行管理的,只有被項目文件所引用的文件才會在Solution Explorer中出現,而且只有這些文件才會被編譯。可以很容易地把一個ASP.NET應用拆分成多個Visual Studio項目,也可以很容易地從項目和源代碼管理中排除一個文件。而項目的文件都是按照命名空間來管理的,Web應用程序可以非常方便地引用其他的類庫,并且自己本身也可以作為類庫被引用,非常適合于項目分模板進行開發。因此,有人認為Web應用程序可能是微軟為了讓程序員很好地從Winform過渡到Web開發而保留了。
與Web應用程序相比,Web網站采用了全新的開發結構,一個目錄結構就是一個Web項目,這個目錄下的所有文件,都作為項目的一部分而存在。它拋棄了命名空間的概念,并且Web網站不可以作為類庫被引用。
2. 從編譯部署看
調試或者運行Web應用程序頁面的時候,必須全部編譯整個Web項目。編譯整個Web項目通常比較快,因為Visual Studio使用了增量編譯模式,僅僅只有文件被修改后,這部分才會被增量編譯進去。因為所有的類文件被編譯成一個應用程序集,當你部署的時候,只需要把這個應用程序集和 .aspx文件、.ascx文件、配置文件以及其他靜態內容文件一起部署。這種模型下,.aspx 文件將不被編譯,當瀏覽器訪問這個頁面的時候,才會被動態編譯。
而在Web網站項目中的所有的Code-Behind 類文件和獨立類文件都被編譯成一個獨立的應用程序集,這個應用程序集被放在Bin目錄下。因為是一個獨立的應用程序集,你能夠指定應用程序集的名字、版本、輸出位置等信息。在默認情況下,當你運行或調試任何Web頁的時候,Visual Studio會完全編譯Web網站項目,這么做可以讓你看到編譯時的所有錯誤。但是,在開發進程中,完全編譯整個站點會是相當慢的。所以推薦你在開發調試中只編譯當前頁。
根據上面的闡述,可以自行決定選擇創建Web項目的方式。如果在開發上有如下需求,建議使用創建Web應用程序的方式來構建自己的Web項目:
希望采用項目的管理方式,需要使用多個項目來構建一個Web應用,即把一個大的ASP.NET項目拆分成多個小項目。
在開發上Web頁面或者Web用戶控件中需要使用到單獨的類,并且希望使用命名空間來進行管理,編譯后要控制應用程序集的名字。
如果在開發上有下列需求,建議使用創建Web網站的方式來構建自己的Web項目:
喜歡使用 Single-Page Code 模型來開發網站頁面,而不是使用Code-Behind 模型來編寫網站頁面。
在編寫頁面時,為了可以快速地看到編寫效果,動態編譯該頁面,馬上可以看到效果,不用編譯整個站點。
需要每個頁面產生一個應用程序集。
希望把一個目錄當做一個Web應用來處理,而不需要新建一個項目文件。
物流,配貨,貨運,網站,論壇,交流,信息發布
網站建設QQ:471226865
轉載于:https://my.oschina.net/wzzz/blog/72215
總結
以上是生活随笔為你收集整理的新建Web网站与新建Web应用程序的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java例程练习(批量修改文件后缀名)
- 下一篇: 《几何与代数导引》例2.6