作為一名 ASP.NET 開發人員,您可能非常清楚 ASP.NET 如何處理 .aspx 資源中的代碼,如何對標記 進行分析並將其動態轉換成 Visual Basic® 或 C# 類,等等。但是接下來呢?ASP.NET 生成的文件 保存在哪裡?如何利用它們滿足頁面請求?從上個月起,我開始關注這一過程。在本月的內容中,我將對 服務器上所發生的操作進行分析,以便您能夠避免某些常見的問題隱患。 我將討論 ASP.NET 臨時文件的 存儲以及動態生成的用於為頁面響應提供服務的類的源代碼。此外,我還將構建一個可以與任何 ASP.NET 2.0 或 ASP.NET AJAX(原代號為“Atlas”)應用程序一同使用的資源管理器工具,以查看和 調試您的頁面執行的實際代碼。但在此之前,您需要了解幾個事項。(和上月專欄一樣,本部分內容主要 以那些沒有文檔記錄的 ASP.NET 工作原理細節為基礎來展開。這些實施細節在未來的 Microsoft® .NET Framework 版本中可能會發生變化。)
Temporary ASP.NET Files 文件夾中保存的是什麼內容?
ASP.NET 頁面請求的處理過程需要使 用一些臨時文件。當您在 Web 服務器上安裝 ASP.NET 2.0 時,所創建的文件夾層次結構如下:
%WINDOWS%\Microsoft.NET\Framework\v2.0.50727
這裡的版本號指的是 ASP.NET 2.0 的零售版。ASP.NET 的每個發布版本(包括每個過渡性的內部版本 )都有一個唯一的版本號,並且會創建不同的文件夾樹,以便支持不同版本的並行執行。因此,您務必要 指定您的應用程序所適用的 ASP.NET 版本,這一點極為重要。在 ASP.NET 1.x 和 ASP.NET 2.0 下運行 的應用程序基於物理形式上獨立的文件夾。在 Microsoft.NET\Framework 文件夾下,您會找到與已安裝 的 ASP.NET 版本數相同數量的 vX.X.XXXX 子文件夾(請參見圖 1)。
圖 1 ASP.NET 1.0、1.1、2.0 和 3.0 運行庫文件