【问题标题】:Why do I get the exception: Could not load type 'xy' from assembly 'System.Xaml'?为什么会出现异常:无法从程序集“System.Xaml”加载类型“xy”?
【发布时间】:2013-06-05 15:22:09
【问题描述】:

我有一个带有 .Net 4 客户端配置文件框架的 WPF 应用程序。当我在安装了 .NET 4 客户端配置文件的新 Windows XP 机器上安装它时。我在启动应用程序时收到此错误消息。

无法加载类型“System.Windows.Markup.ValueSerializerAttribute” 从程序集'System.Xaml,版本=4.0.0.0,文化=中性, PublicKeyToken=b77a5c561934e089'。

我检查了 System.Xaml.dll,它在:

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319

有什么想法吗?提前致谢。

编辑:

我在msdn website上找到了这个信息:

平台: Windows 7、Windows Vista SP1 或更高版本、Windows XP SP3、Windows Server 2008(不支持服务器核心)、Windows Server 2008 R2(Ser ver Core 支持 SP1 或更高版本),Windows Server 2003 SP2

【问题讨论】:

  • 您为什么使用客户资料?
  • @Venson : 因为我不需要完整版,但我尝试在 XP 机器上安装完整版,没有用
  • 您是否使用 DevExpress 或任何第三方库?
  • 您使用的是哪个 IDE(Visual Studio/DevExpress)?
  • 它是为 x64 构建的吗?你检查了 C:\Windows\Microsoft.NET\Framework64 吗?

标签: c# .net wpf xaml installation


【解决方案1】:

您正确地错过了VisualStudio C++ Runtimes。 这是 DevExpress 的一个大问题,因此您可能会遇到另一个异常:

FileNotFoundExeption 在新 PC 和 DevExpress 上“正常”

【讨论】:

  • 好的,我明天去办公室检查一下,然后通知你结果,谢谢
  • 再次您好,我确实在XP机器上找到了Visual C++ Redistributable x86(它在安装前提条件中定义),我尝试重新安装它,但我有同样的错误消息。跨度>
  • 我从 C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319 目录中删除了 System.XAML.dll,但我仍然有相同的错误消息(我预计“System.XAML.找不到dll”)。
  • 尝试从你的项目中提取 DevExpress 并在没有它的情况下再次尝试进行测试
  • 如何从我的项目中提取 DevExpress?如果我这样做,则根本不会构建解决方案。我将 DevExpress 版本更新为 12.2.6。不工作!
【解决方案2】:

当我将 DevExpress 从 12.2.4 更新到 13.1.4 时,问题得到了解决。不知道为什么,但它解决了问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多