框架兼容性

框架兼容性

问题描述:

我有一个类库,它是建立在.NET框架4.0版。是否有可能增加本作中,针对V3.5框架控制台或Web应用程序的参考?

I have a class library which is built on .NET Framework v4.0. Is it possible to add this as a reference in a console or web application targeted for v3.5 framework?

元数据格式已经改变了.NET 4.0。 CLR中,一个当你的目标从2.0到3.5的任何版本的.NET不知道如何读它,你得到的第2版。同样的事情发生了1.1和2.0之间。在CLR版本4知道如何读取旧的格式,没有问题。只要你有一个引用被编译成目标4版本,那么非框架组装你的有无的使用.NET 4.0。

The metadata format has changed in .NET 4.0. Version 2 of the CLR, the one you get when you target any version of .NET between 2.0 and 3.5 does not know how to read it. Same thing happened between 1.1 and 2.0. Version 4 of the CLR knows how to read the old formats without a problem. As long as you have a reference to a non-framework assembly that was compiled to target version 4 then you have to use .NET 4.0.

重新目标不另有规定的引用,该组件可以将现有EXE项目。添加一个config文件的项目,并粘贴:

Retargeting an existing EXE project that doesn't otherwise requires a reference to that assembly is possible. Add a .config file to the project and paste this:

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