如果我運行此代碼:.Assembly/GetExportedTypes拋出FileNotFoundException異常
var myAsm = typeof(MyType).Assembly;
var types = myAsm.GetExportedTypes();
我得到:
System.IO.FileNotFoundException : Could not load file or assembly ....
其中列出的依賴程序集。但是,如果我這樣做:
var myAsm = Assembly.LoadFrom(...); // DLL containing the same assembly as above
var types = myAsm.GetExportedTypes();
它工作正常。
我真的更喜歡第一種技術,因爲它更乾淨...爲什麼我需要加載已經加載的DLL?有什麼建議?
首先想到的是DLL通常會延遲加載直到實際使用類型。你確定DLL已經被加載了嗎? (你以前用過MyType嗎?) – 2009-09-22 14:39:19