0
我正在創建一個新的appdomain用於加載一些庫,它似乎有問題找到一些文件。我正在使用事件定位給出全名的系統組合
ReflectionOnlyAssemblyResolve(object sender, ResolveEventArgs args)
在其中一個事件中,該事件是在程序集要求下提出的。
System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
這就是所有需要的裝配要求。
我的問題給出了全名,我怎樣才能得到實際加載庫的位置?如果這也不是必要的,並且有另一種方法來加載庫,我也會很感激。
PS:主要應用程序是一個.net 4.0應用程序。
它似乎工作正常。我將行改爲 'var assm = Assembly.ReflectionOnlyLoad(args.Name); 'return assm; 現在的問題是,它正在爲其中一個庫引發一些異常。 '繼承安全規則違反類型:'System.Web.Mvc.CompareAttribute'。派生類型必須匹配基類型的安全可訪問性或者不易訪問。# – ritcoder 2012-01-04 20:05:23
程序集可能已經使用不同的安全設置加載到AppDomain中。在這種情況下,您可以嘗試檢查AppDomain.GetAssemblies()並比較全名。 – 2012-01-04 20:50:35
沒有工作。我得到了同樣的錯誤。從我設置的斷點看來,如果程序集已經被加載,則不會引發事件。 – ritcoder 2012-01-04 23:36:55