2011-06-08 57 views
0

有一種情況,我們有一個正在轉移到另一組服務器的正在運行的生產站點。處理該網站的團隊已經完成了它的工作,沒有任何問題(我們可以整天測試它)。他們遇到的問題是,爲了使其生效,必須編譯/構建而不會出現任何錯誤。未編譯和編譯的ASP.NET頁面之間有什麼區別

這是一個建立在2.0框架上的ASP.NET網站。不是非常複雜,就我所知,它現在從未被編譯過。在當前生產站點上所做的任何更改都只需複製.html和.aspx文件。

在網站上線並按原樣部署之前,不對網站進行編譯的後果是什麼?處理部署的團隊說這是一個安全問題。

回答

2

IIS會根據請求編譯.as?x文件。你可以在一個bug中找到它,直到加載頁面才找到它。如果你創建一個web項目(而不是一個web目錄),當你去發佈時,一個dll被編譯成你網站上的所有代碼。在這一點上,沒有一個.vb文件是必需的,只有編譯好的dll需要在/ bin文件夾中。這可以確保您的代碼中沒有語法錯誤,並且不會遇到編譯錯誤。

+0

啊,這是有幫助的。因此,如果需要稍作更改,則整個站點需要重新編譯並部署爲.dll而不是靜態.aspx和.html文件? – Valien 2011-06-08 17:33:31

+0

是的,但是編譯DLL的過程比編譯Web目錄中的每個單獨頁面要快得多。本質上,Web目錄爲每個頁面編譯一個dll。加載的每個頁面都必須加載它的單個dll。該Web項目加載該單一的DLL一次,並保持加載的應用程序的生命。 – 2011-06-08 17:39:05

相關問題