Asp.net
執行 IIS Express 時 ASP.NET 網站的程序集在哪裡
我知道通過 ASP.NET 網站下的動態編譯,文件背後的程式碼被編譯成程序集。執行 IIS Express 時,這些 DLL 儲存在哪裡?它只存在於記憶體中嗎?我在 bin 文件夾或臨時目錄(C:\Windows\Microsoft.NET\Framework
$$ 64 $$\v4.0.30319)。通常我會在發佈時預編譯它們時生成它們。但是,在這種情況下,我看不到它們。 我錯過了什麼嗎?
謝謝。
更新:
我確實在 C:\Users\Administrator\AppData\Local\Temp\Temporary ASP.NET Files\root 下看到了 dll
所以我認為它將它們儲存在那裡?這是 Visual Studio 2012,.NET 4.5。
請參考:http: //msdn.microsoft.com/en-us/library/e22s60h9%28v=vs.85%29.aspx
它確實應該在您的 Bin 文件夾中。
這是框架 4.5 的附加資訊:http: //msdn.microsoft.com/en-us/library/hh475319.aspx
它很可能不是您的 bin 文件夾。一切都被複製到一組臨時文件夾中。
我為這個問題寫了一個方法 -
private string[] GetAssembly(string[] assemblyNames) { string [] locations = new string[assemblyNames.Length]; for (int loop = 0; loop <= assemblyNames.Length - 1; loop++) { locations[loop] = AppDomain.CurrentDomain.GetAssemblies() .Where(a => !a.IsDynamic && a.ManifestModule.Name == assemblyNames[loop]) .Select(a => a.Location) .FirstOrDefault(); } return locations; }請參閱我在該主題上寫的這篇文章 - http://nodogmablog.bryanhogan.net/2015/05/finding-the-location-of-a-running-assembly-in-net/