Microsoft MVP성태의 닷넷 이야기
Whidbey breaking change --- Caching binding failures [링크 복사], [링크+제목 복사],
조회: 12455
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

출처: http://blogs.msdn.com/junfeng/archive/2004/07/22/190813.aspx
assembly not found에 대한 속도를 높이기 상당히 고심한 흔적이 엿보이네요. ^^

Whidbey breaking change --- Caching binding failures

This is one of the breaking change mentioned in gotdotnet.com's break change from .Net 1.1 to 2.0

Cache load failures in order to ensure that different app domains do not have different dependency loading success/failure characteristics in domain neutral sharing scenarios

 

http://www.gotdotnet.com/team/changeinfo/Backwards1.1to2.0/default.aspx#00000067

 

What does it mean?

 

Say  you call Assembly.Load(”Foo, version=1.0.0.0, culture=neutral, publicKeyToken=0123456789abcdef”), you get a FileNotFoundException. You realize that foo.dll should be in GAC but you forget to install it. So you install it (using gacutil.exe or some other mechanism) to GAC. Now you call Assembly.Load(“Foo, version=1.0.0.0, culture=neutral, publicKeyToken=0123456789abcdef“) again.

 

In v1.0/v1.1, the second load will succeed. In Whidbey, the second load will fail.

 

Installing to GAC is just an example. As long as the first bind failed, the second bind will fail with exactly the same exception.

 

The caching is done on per AppDomain basis. If you create a new AppDomain and call Assembly.Load() on that app domain, it will succeed.








[최초 등록일: ]
[최종 수정일: 4/14/2006]


비밀번호

댓글 작성자
 



2006-03-14 12시52분
이러한 binding failures 에 대한 캐쉬를 하지 못하도록 설정하는 방법이 configuration 에 제공되고 있습니다.

disableCachingBindingFailures
; http://blogs.msdn.com/junfeng/archive/2006/03/13/550877.aspx
kevin25

NoWriterDateCnt.TitleFile(s)