2010-02-18 6 views
3

내가 클래스 라이브러리 내가이 어셈블리를로드 엔터프라이즈 라이브러리 구성 도구를 사용할 때, 내가 할 .NET 4.0에서 만든 :엔터프라이즈 라이브러리 구성 및 .NET 4.0

오류로드 어셈블리 : 파일 또는 어셈블리를로드 할 수 없습니다 . 이 어셈블리는 현재로드 된 런타임보다 최신 런타임에 의해 작성되며로드 할 수 없습니다.

저는 Enterprise Application blocks 4.1 및 5.0 베타 모두에서 Configuraiton 도구를 사용해 보았습니다. .NET 4.0은 구성 도구에서 지원되지 않습니다.

alt text http://www.freeimagehosting.net/uploads/th.d7fde7a166.jpg

+0

나는 아직 지원하지 않는다고 생각합니다. – Perpetualcoder

답변

2

문제는 단지 .NET 2.0 프로세스 내에서로드 할 수있는 어셈블리를로드하는 시도합니다 동안 EntLibConfig.exe 기본적으로 .NET 2.0에서 실행하는 것입니다. EntLibConfig.exe.config 파일을 변경하여 .NET 4.0에서 실행되도록 EntLibConfig.exe의 구성을 변경하려고 할 수 있습니다.

없음 여기 약속하지만, EntLibConfig.exe.config 파일이 추가 시도 :

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <startup> 
     <!-- Find out the exact version number and 
      put that in the version attribute. --> 
     <requiredRuntime version="v4.0.0.0" /> 
    </startup> 
    ... 
</configuration> 

이 당신을 위해 밖으로 일을 알려줘.

아직 읽지 않으신다면 avoiding configuration pitfalls with incompatible copies of Enterprise Library에 대한 기사를 읽어 보시기 바랍니다. EntLib 개발자 중 한 명이 썼습니다.

+0

예, 작동했습니다! 항상 그렇듯이 통찰력을 가져 주셔서 감사합니다. – Nick

+0

또한 일부 스크린 샷에서는 구성 파일을 마우스 오른쪽 단추로 클릭 할 때 엔터프라이즈 환경 설정 도구가 VS 환경의 컨텍스트 메뉴에 나열된 것을 보았습니다. 내 컴퓨터에 등록하는 방법을 궁금해. – Nick

+0

Visual Studio 2008의 경우 EntLib 설치 프로그램을 실행해야합니다. 자동으로 플러그인으로 설치됩니다. 설치 프로그램이 2010 년에 이것을 지원하지 않는다고 생각합니다. 아마도 수동으로 등록 할 수는 있지만 이것을 어떻게할지는 모르겠습니다. 여기에서 물어볼 수 있습니다. – Steven

관련 문제