猿问

在.NET 4.0项目中引用.NET 2.0混合模式程序集需要什么“附加配置”?

在.NET 4.0项目中引用.NET 2.0混合模式程序集需要什么“附加配置”?

我有一个项目,希望在其中使用一些.NET 4.0特性,但核心要求是我可以使用System.Data.SQLite框架,该框架是针对2.x编译的。这里被接受的答案但我不知道如何才能真正做到这一点。

当我在引用2.x程序集的同时尝试运行我的4.0项目时,我得到:

混合模式程序集是针对运行时的版本“v2.0.50727”构建的,如果没有其他配置信息,则无法在4.0运行时中加载。

什么“附加配置”是必要的?


慕后森
浏览 608回答 3
3回答

慕桂英546537

为了使用CLR2.0混合模式装配,您需要修改App.Config文件以包括:<?xml version="1.0"?><configuration> &nbsp;<startup useLegacyV2RuntimeActivationPolicy="true"> &nbsp; &nbsp;<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> &nbsp;</startup></configuration>关键是useLegacyV2RuntimeActivationPolicy旗子。这将导致CLR使用最新版本(4.0)加载混合模式程序集。没有这个,它就行不通。请注意,这仅关系到混合模式(C+/CLI)程序集。可以加载所有托管clr 2程序集,而无需在app.config.

胡子哥哥

这,这个论坛帖子在.NET Framework Developer Center上。它也许能提供一些洞察力。(添加到应用程序的配置文件中。)<configuration> &nbsp;&nbsp;<startup&nbsp;useLegacyV2RuntimeActivationPolicy="true"> &nbsp;&nbsp;&nbsp;&nbsp;<supportedRuntime&nbsp;version="v4.0"/> &nbsp;&nbsp;</startup></configuration>
随时随地看视频慕课网APP
我要回答