.net - AssemblyResolve 总是被提升,要求 MyAssembly.resources

标签 .net wpf resources assemblies assembly-resolution

我有一个 WPF 应用程序,我订阅了事件 AppDomain.AssemblyResolve (只要运行时没有找到程序集,就会引发此事件),并且我注意到它被多次调用尝试解析 MyAssembly.resources,其中 MyAssembly 是当前正在执行的程序集。它还对我从 MyAssembly 引用的库程序集提出了同样的要求(它要求获得 Library.resources)。

这是正常的吗?我如何解决它?我的应用程序确实有问题。它无法加载位于库中的某些 xaml 用户控件。这有关系吗?

最佳答案

将此行添加到您的 AssemblyInfo.cs,您的解析器将不再被要求提供资源。

[assembly: NeutralResourcesLanguageAttribute("en-US", UltimateResourceFallbackLocation.MainAssembly)]

尽管这是一种变通方法,但应仔细考虑多语言应用程序。

更多信息:
  • https://connect.microsoft.com/VisualStudio/feedback/details/526836/wpf-appdomain-assemblyresolve-being-called-when-it-shouldnt
  • http://blogs.msdn.com/b/kimhamil/archive/2008/11/11/what-does-the-neutralresourceslanguageattribute-do.aspx
  • http://forums.devshed.com/net-development-87/c-wpf-appdomain-assemblyresolve-being-called-when-it-shouldn-t-669567.html
  • 关于.net - AssemblyResolve 总是被提升,要求 MyAssembly.resources,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4825663/

    相关文章:

    wpf - 我还能如何在 View 模型的 View 中触发动画?

    java - Netbeans 和外部配置文件

    php - 反转 mysql 资源

    c# - 这是否使用字典线程安全?

    c# - 在从过程代码调用 Execute 之前,我应该检查 ICommand 的 CanExecute 方法吗?

    c# - 一旦第二个窗口关闭,属性就会恢复为原始值

    asp.net - ASP.NET 中的资源是否需要编译?

    c# - 如何将 HTML 加载到 WPF 的 Webbrowser 控件中?

    c# - 什么应该放入 AssemblyTrademarkAttribute 中?

    c# - 使用用户控件时的 WPF 数据绑定(bind)