Где находятся сборки для веб-сайта ASP.NET при запуске IIS Express
Я знаю, что с динамической компиляцией под веб-сайтом ASP.NET код за файлами компилируется в Assemblies. Где эти DLL хранятся при запуске IIS Express? Это только в памяти? Я не вижу их в папке bin или в каталоге temp (C:\Windows\Microsoft.NET\Framework [64]\v4.0.30319). Обычно я генерирую их при предварительной компиляции их при публикации. В этом случае я их не вижу.
Я что-то пропустил?
Спасибо.
UPDATE:
Я видел dll в папке C:\Users\Administrator\AppData\Local\Temp\Temporary ASP.NET\root
Итак, я думаю, что он хранит их там? Это Visual Studio 2012,.NET 4.5.
Ответы
Ответ 1
Обратитесь к следующему: 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
Ответ 2
Скорее всего, не ваша папка с 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/