【问题标题】:Accessing an XML embeded resource file throws error in Release mode but not Debug mode访问 XML 嵌入资源文件在发布模式下会引发错误,但在调试模式下不会
【发布时间】:2009-04-06 20:22:17
【问题描述】:

.NET 3.5 Visual Studio 2008 团队版

我有一个 XML 文件,已通过项目属性的“资源”选项卡添加到程序集中;并将访问修饰符标记为公开。在调试模式下运行时,在另一个项目中引用程序集和嵌入资源没有问题,即,

XElement errorMap = XElement.Parse( Properties.Resources.ErrorMapper );

但是,当项目在发布模式下运行时,我收到此错误:

无法加载文件或程序集 'XXX.XXX, 版本=1.1.0.25104,文化=中性, PublicKeyToken=null' 或其之一 依赖关系。试图 加载一个不正确的程序 格式。

为什么项目在 Debug 模式下运行良好,但在 Release 模式下却不行?

【问题讨论】:

    标签: c# .net visual-studio-2008 resources


    【解决方案1】:

    嗯……

    我运行 64 位开发机器,并将构建和发布模式定位到 x86 平台。显然,当我添加资源文件时,发布模式的平台构建更改为任何 CPU。

    由于我引用了一些需要 32 位的第 3 方 DLL,因此在 Release 模式下构建的 Any CPU 被淘汰了。

    问题解决了。

    【讨论】:

      【解决方案2】:

      您是否引用了测试盒上的一个 .dll 文件,而该文件与您的生产盒上的位置不同?我想这取决于您是否将引用设置为复制本地...

      你的 .net 框架和服务包呢,我会确保它们是相同的/最新的......

      【讨论】:

      • 并非如此。请参阅我的解决方案:stackoverflow.com/questions/723055/… 无论如何,在这种情况下,问题是关于在调试/发布中本地运行;不是测试/生产环境。
      猜你喜欢
      • 2012-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-03
      • 1970-01-01
      相关资源
      最近更新 更多