2016-07-28 63 views

回答

1

是,IIS將預編譯的網站,即使該項目是一個Web應用程序,我說,這是因爲該網站是

通過ASP.NET的 第一次在服務器上動態(自動)編譯該網站已被安裝後,接收到一個請求或 更新

,並在Web應用程序

你明確地編譯使用 用於開發或源代碼控制

From Web Application Projects versus Web Site Projects in Visual Studio, MSDN

但即使是在Web應用程序項目,web pages (.aspx), user controls (.ascx), and MVC Razor views (.cshtml and .vbhtml) are compiled dynamically on the server by the ASP.NET compiler計算機上的源代碼。現在

,回答你的問題,是的,它會編譯,因爲它是一個.aspx文件,和.aspx文件(和其他文件類型,如的.ascx,.ashx的,等)被認爲即使它只有HTML裏面,

當第一個要求是嚮應用程序發出,ASP.NET編譯特定的順序 文件。首先要編譯的項目被稱爲 以作爲頂級項目。在第一個請求之後,頂級 項目只有在依賴關係發生變化時纔會重新編譯。

頂級項目包括App_GlobalResources文件夾, App_WebResources文件夾,配置文件屬性,App_Code文件夾和Global.asax文件。在編譯頂級項目之後,ASP.NET 將編譯其他項目。

這些項目包括App_LocalResources文件夾,個人ASP.NET頁面 (.aspx文件),ASP.NET用戶控件(.ascx文件),HTTP ASP.NET處理程序 (ashx的文件),和ASP.NET HTTP模塊(.asmx文件),如 以及主題,主頁面和其他源文件。

From Understanding ASP.NET Dynamic Compilation

1

即使您上傳的代碼內容類似<script runat="server">的ASPX文件,IIS也不會重新編譯該網站。編輯將在用戶第一次點擊該頁面時發生。

但即使您沒有任何服務器站點代碼頁面上,C#或VB.Net編譯器會啓動。它不知道那裏還沒有代碼。

但據我所知,通常只會編譯新頁面,而不是整個網站。

相關問題