2009-02-11 47 views
9

我剛剛開始使用一個cms(N2),它有一個使用vs2008中的網站項目模板的模板基本實現。我注意到編譯它比使用我更喜歡的Web應用程序項目花費的時間要長。網站項目與Web應用程序 - 哪個更好?

我的問題是:

  1. 爲什麼它似乎需要更長的時間來編譯?
  2. 哪個更好用?
  3. 我應該將其轉換爲Web應用程序嗎?

我很抱歉,如果這是重複的,但我找不到類似的問題。

乾杯

+0

看看這個問題:http://stackoverflow.com/questions/475938/what-is-the-difference-between-web-application-and-website-in-asp-net – M4N 2009-02-11 22:16:56

+0

不,剛纔最近忙於工作,沒有對SO時間進行任何整理......現在全部完成:-) – WestDiscGolf 2009-02-25 08:50:09

+0

[ASP.NET Web Site或ASP.NET Web Application?]的可能重複(http://stackoverflow.com/questions/398037/asp-net-web-site-or-asp-net-web-application) – 2013-06-04 00:40:26

回答

10

主要區別是:

Web應用程序項目一切都是預編譯所有的代碼隱藏頁將被編譯成一個.dll ----在網站項目項目中的任何內容都是預編譯的,編譯器將編譯所有內容以確保它是有效的,但是沒有編譯的頁面被上傳。當用戶第一次嘗試訪問該網站時,每個頁面都被編譯到它自己的dll中。這意味着在網站項目中,您可以上傳一個代碼隱藏文件。

命名空間 - 在Web應用程序項目命名空間默認情況下,在網站項目他們不是創造。

項目文件 - 一個網站項目沒有一個「cproj」提交Web應用程序項目一樣。

Converting to a Web Application project可能會更困難,那麼你認爲特別是如果你嚴重依賴appcode文件夾。

我個人比較喜歡Web應用程序項目我覺得它們更容易使用,而且更少惱人的部署。我個人只會使用非常小而簡單的網站項目。

額外的閱讀從MSDN

+0

不錯,很好的總結 – 2009-02-11 22:39:16

1

除了由克里斯提供的信息,你也應該注意,對於Web應用程序項目,配置文件不提供開箱即用:

http://www.codersbarn.com/post/2008/06/01/ASPNET-Web-Site-versus-Web-Application-Project.aspx

有是可用的解決方法: http://code.msdn.microsoft.com/WebProfileBuilder

基本上,Web應用程序項目沒有Profile對象au與Web站點項目一樣,以主動方式添加到每個頁面,所以我們無法獲得對web.config文件中定義的配置文件屬性的強類型編程訪問。

安東尼:-)

1

我的選擇是在Web應用程序使用網站項目。我主要依靠「在瀏覽器中查看」在開發過程中執行頁面而不是f5。我可以打開瀏覽器窗口並修改代碼,而無需關閉運行時瀏覽器。通常如果我需要調試,我將IDE附加到相應的進程。根據我的經驗,這樣做更有效率,而不必每次編譯或進行更改時編譯和重新啓動應用程序。如果應用程序具有登錄頁面,則會更加放大。每次按F5時都不需要登錄,因爲有許多方法可以進行設置。但偏好不是。

相關問題