2013-08-13 2 views
12

ASP.NET 웹 사이트에서 동적 컴파일을 사용하면 코드 숨김 파일이 어셈블리로 컴파일된다는 것을 알고 있습니다. 이 DLL은 IIS Express를 실행할 때 어디에 저장됩니까? 기억에만 있습니까? bin 폴더 나 temp 디렉토리 (C : \ Windows \ Microsoft.NET \ Framework [64] \ v4.0.30319)에는 표시되지 않습니다. 일반적으로 게시 할 때마다 미리 컴파일 할 때 생성합니다. 이 경우에는, 나는 그들을 보지 못합니다.IIS Express를 실행할 때 ASP.NET 웹 사이트에 대한 어셈블리는 어디에 있습니까?

내가 누락 된 항목이 있습니까?

감사합니다.

UPDATE :

나는 C에서 DLL의의를 보았는가 : \ 사용자 그래서 거기를 저장 생각하고 임시 ASP.NET 파일 \ 루트

\ 관리자 \의 AppData \ 로컬 \ 온도를 \? 이것은 Visual Studio 2012, .NET 4.5입니다.

+0

, DLL의 EntityFramework 등이 있으며, 기타 Microsoft 것들을하지만

난 그냥이 문제에 대한 방법을 썼다 내가 가지고있는 세 페이지, 즉 About.aspx, Contact.aspx, Default.aspx를 대표할만한 것은 없다. 모두 Visual Studio에서 기본 "새 웹 사이트"를 만들 때 생성되는 기본 설정입니다. – SaltProgrammer

답변

5
+4

감사하지만 Bin 폴더에는 표시되지 않습니다. 여기있을 수 있을까요? C : \ Users \ Administrator \ AppData \ Local \ Temp \ Temporary ASP.NET Files \ root – SaltProgrammer

+0

여기를보십시오 : C : \ Users \ \ AppData \ Local \ assembly \. 브라우저에서 클릭 한번 실행하는 응용 프로그램을 실행하면 dll이 저장되었습니다. 그러나 이것은 IIS에서 실행되지 않는 응용 프로그램에 대해서는 생각합니다. 또한 inetpub 아래를보십시오. 이것은 흥미 로워지고 있습니다 ... –

+5

임시 파일은 "C : \ Users \ \ AppData \ Local \ Temp \ Temporary ASP.NET Files \ root \ –

3

그것은 매우 가능성이 높습니다 아닌 bin 폴더 :

이 프레임 워크 4.5에 대한 추가 정보입니다. 모든 것이 임시 폴더 세트로 복사됩니다.

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/

내가 bin 폴더에서 볼
관련 문제