【问题标题】:Visual Studio adding DLL as reference errorVisual Studio 添加 DLL 作为参考错误
【发布时间】:2010-11-30 06:58:36
【问题描述】:

我正在向项目中添加一个库,但出现以下错误:

混合模式程序集是针对 运行时版本“v2.0.50727” 并且无法在 4.0 中加载 运行时无需额外 配置信息。

我不太确定我必须调整什么才能运行它。有谁知道应该怎么改?

谢谢,

下午

【问题讨论】:

  • 是“在 4.0 中编译库”的选项吗?
  • 不确定我是否遵循,您的意思是在 4.0 中重建库?不,我不能。

标签: c# visual-studio


【解决方案1】:

正如 Marc 所说,理想情况下,您应该在 .NET 4 中重建,使您的项目面向 .NET 3.5 或更低版本。为 v2 CLR 构建的混合模式程序集使用“旧版”运行时激活技术,这与 v4 CLR 在同一进程中运行多个 CLR 的能力不能很好地配合。

或者,您可以将此信息添加到您的 app.config:

<configuration>
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0"/>
  </startup>
</configuration>

有关详细信息,请参阅this questionthis documentation 和此blog post

【讨论】:

    【解决方案2】:

    未经测试,但可能(来自MSDN

    <?xml version="1.0"?> 
    <configuration> 
      <startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> 
      </startup> 
    </configuration>
    

    【讨论】:

      【解决方案3】:

      我同意 stackoverflow 很棒,但谷歌仍然在世界上占有一席之地......

      从将您的错误复制并粘贴到谷歌: http://social.msdn.microsoft.com/Forums/en/clr/thread/58271e39-beca-49ac-90f9-e116fa3dd3c0

      祝你好运。

      【讨论】:

      • 是的,我也先用谷歌搜索,然后找到了相同的页面。据我了解,这使得整个项目在兼容模式下运行,这是我必须避免的。
      • 该信息对发布很有用,以便人们知道您尝试了什么以及您的要求是什么(例如,不使用“兼容模式”)
      猜你喜欢
      • 1970-01-01
      • 2018-11-21
      • 1970-01-01
      • 1970-01-01
      • 2011-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多