Assembly.Load加载提示xxxxx.resources加载失败的问题 Assembly.LoadFrom
Assembly.Load是将指定的程序集加到当前应用程序域的默认上下文之中,他不会加载当前加载的程序集的依赖项目,所以当程序集有创建资源集时那么此资源集将加载失败
其实是可以用 Assembly.LoadFrom 来加载程序集啦,这样它会将被加载的程序的依赖项目都加进来,但这个有一个比较严重的问题,就是会加载不同路径下面的相同的程序集,并且会将这两个程序集视为不同的程序集,
所以查了一下了在这边找到了解决方案
http://stackoverflow.com/questions/4368201/appdomain-currentdomain-assemblyresolve-asking-for-a-appname-resources-assembl
在被加载的程序集的AssemblyInfo.cs 加上以下语句
[assembly: NeutralResourcesLanguageAttribute("en-US", UltimateResourceFallbackLocation.MainAssembly)]
编译后问题得以解决,查阅MSDN得知
NeutralResourcesLanguageAttribute 类有关当前程序集的语言文化相关的设定(MSDN的机器翻译不明不白,大致的意思应该是这个)
能过UltimateResourceFallbackLocation 枚举 的MainAssembly值来指定在主程序域中搜索相应的配置...
浙公网安备 33010602011771号