동적으로 컴파일 된 ASP.NET 웹 사이트 프로젝트에서 App_Code 폴더의 어셈블리를 명시 적으로 명명 할 수 있습니까?동적으로 컴파일 된 ASP.NET 웹 사이트의 App_Code 폴더에 명시 적 어셈블리 이름을 제공 하시겠습니까?
예를 들어, 일정한 환경에서 I는 neizakfo 다를 수있는 부분은 어디 Temporary ASP.NET Files\
폴더 생성 어셈블리 이름 부분적 App_Code.neizakfo.dll
같이 무작위되는 ASP.NET 웹 사이트를 실행할 때. App_Code_Web1.dll
과 같은 어셈블리 이름을 명시 적으로 제공 할 수 있습니까? 비즈니스 요구 사항으로
대한 설명
는 웹 사이트 구축/미리 컴파일 할 수 없습니다. 따라서 위의 설명대로 Temporary ASP.NET Files
폴더와 동적으로 컴파일 된 어셈블리의 컨텍스트에서 솔루션을 찾고 있습니다.
배경 :
나는 구성에 저장된 어셈블리 자격을 갖춘 이름을 사용하여 웹 사이트의 App_Code 폴더에 클래스에서 동적 유형의 인스턴스를 수행 할 수있는 방법을 찾고있는 동안이 질문을 통해 온,하지만 인스턴스화 웹 페이지에서 어셈블리 경계를 넘어서게됩니다. 웹 페이지와 app_code 코드는 기본적으로 두 개의 다른 어셈블리로 컴파일되므로 현재 실행중인 어셈블리 (웹 페이지) 나 mscorlib에서 Type 이름을 검색하는 Type.GetType (..) 메서드의 기본 동작은 App_Code 어셈블리에서 Type을 선택하는 데 충분합니다. 무작위 화되었으므로 app_code 어셈블리 이름은 어셈블리가 정규화 된 문자열에 포함되지 않습니다.
이 문제를 없애기 위해 클래스 라이브러리에 데이터 형식을 넣을 수 있습니다 (미리 정의 된/정확한 이름이 있기 때문에). 그러나이 형식을 만들지 않고이 작업을 수행하는 방법을 알고 싶습니다. 클래스 라이브러리 프로젝트.
일종의. http://msdn.microsoft.com/ko-kr/library/bb398860.aspx#PreCompilingToFixedNameAssemblies를 참조하십시오. 나는이 동작이 훨씬 더 잘 정의되어 있기 때문에 웹 애플리케이션을 선호한다. 당신이하고자하는 것은 웹 애플리케이션 프로젝트에서 사소한 것입니다. – dash