출처:
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]