C# 如何在.NET2.0项目中使用.NET3.0类?

C# 如何在.NET2.0项目中使用.NET3.0类?,c#,.net,visual-studio,.net-2.0,.net-3.0,C#,.net,Visual Studio,.net 2.0,.net 3.0,我在.NET2.0中有一个项目(我们称之为项目a)。我想使用,所以我创建了另一个项目(在.NET 3.0中,我们称之为项目B),我在其中放置了所有WCF逻辑,所以我在项目A中所做的就是从项目B的类中调用某个方法。当我添加对项目B的引用时,项目A没有看到它,我收到警告: 无法解析主引用“Project B/Some.dll”,因为它间接依赖于框架程序集“System.ServiceModel,Version=3.0.0.0,Culture=neutral,PublicKeyToken=XXX”,该

我在.NET2.0中有一个项目(我们称之为项目a)。我想使用,所以我创建了另一个项目(在.NET 3.0中,我们称之为项目B),我在其中放置了所有WCF逻辑,所以我在项目A中所做的就是从项目B的类中调用某个方法。当我添加对项目B的引用时,项目A没有看到它,我收到警告:

无法解析主引用“Project B/Some.dll”,因为它间接依赖于框架程序集“System.ServiceModel,Version=3.0.0.0,Culture=neutral,PublicKeyToken=XXX”,该程序集无法在当前目标框架中解析。“.NETFramework,版本=v2.0”


我怎样才能做到这一点呢?

要使用WCF(在运行时)。NET 3(或更好的3.5)无论如何都需要安装。因此,将ProjectA更改为目标3(或3.5)。

您不能直接执行此操作,您的项目针对不同版本的.NET

您可以做的是在两个进程之间进行通信

使您的3.0项目成为可执行文件,并允许它接受调用您想要使用的方法的命令行参数


在2.0项目中,使用适当的命令行参数将3.0项目生成为一个新的
进程
。如有必要,请写入3.0项目的
标准输出
,并从2.0项目中读取。

是的,这是完全可能的。您只需将3.0中编写的组件作为COM对象公开。2.0托管应用程序只是将它们用作COM对象,不知道它们是本机的、2.0的、3.0的还是其他的。COM是两个运行时版本必须相同实现的公共接口。

它已安装。我无法将Project A升级到.NET 3.0(如果可以的话,将不会出现此问题;)@PeteMorrison请参阅关于您提交的建议编辑的问题的。