基本介紹
- 中文名:App_Code
- 平台:NET
- 位於:Web應用程式根目錄下
- 提供:程式、業務類、自定義提供程式
簡介,注意,
簡介
在開發時,對App_Code資料夾的更改會導致整個應用程式重新編譯。對於大型項目,這可能不受歡迎,而且很耗時。為此,鼓勵大家將代碼進行模組化處理 到不同的類庫中,按邏輯上相關的類集合進行組織。應用程式專用的輔助類大多應當放置在App_Code資料夾中。
App_Code資料夾中存放的所有類檔案應當使用相同的語言。如果類檔案使用兩種或多種語言編寫,則必須創建特定語言的子目錄,以包含用每種語言編寫的類。一旦根據語言組織這些類檔案,就要在web.config檔案中為每個子目錄添加一個設定:
<compilation>
<codeSubDirectories>
<add directoryName="VBFolder" />
</codeSubDirectories>
</compilation>
重要的是,特定語言的子目錄應在web.config檔案中註冊,否則,不管它們屬於哪個資料夾,App_Code資料夾下 的所有檔案將被編譯成一個單獨的程式集。上述配置腳本描述了這么一種情況,即所有的C#檔案都放在App_Code資料夾的根目錄下,而把幾個 Visual Basic .NET類檔案移入VBFolder目錄中。如果<codeSubDirectories>節中提到的目錄不存在,則會收到一個編譯錯誤提 示。
App_Code根資料夾中的檔案被編譯成App_Code_xxx.dll程式集,其中xxx是隨機生成的字元序列。一個 給定子目錄中的檔案將被編譯成一個名為App_SubCode_xxx_yyy.dll的動態創建的程式集,其中xxx指示子目錄的名稱,而yyy是一個 隨機字元序列。只有在應用程式根目錄中的web.config檔案中進行了設定,<codeSubDirectories>節才有效。
在App_Code目錄或任何其他子目錄中放置一個assemblyinfo.cs檔案,可以創建一個強命名的程式集。顯然,如果該資料夾包含Visual Basic .NET檔案,那么將使用assemblyinfo.vb檔案。程式集配置檔案可以引用一個.snk檔案來保存強名稱的密鑰。
給一個程式集設定一個強名稱,首先必須獲得一個公開/私有密鑰對。通過使用強名稱(Strong Name)工具(sn.exe),可以獲得這樣一個密鑰對。強名稱工具是我們可以在.NET Framework的安裝路徑中發現的SDK binary之一。密鑰對檔案通常有一個.snk擴展名。可以將該檔案保存到一個應用程式資料夾中,並在assemblyinfo.cs檔案中引用它,如下所示:
[assembly: AssemblyKeyFileAttribute(@"yourKeyPair.snk")]