2009-10-22 156 views
21

我想用.NET 4.0做一些Office Interop的东西,但是使用VS2008和.NET3.5开发我的项目的其余部分。如何在.NET 3.5项目中引用.NET 4.0程序集

如何在我的其他解决方案中使用.NET 4.0程序集中的功能。将CLR 4.0程序集加载到2.0 AppDomain中将不起作用,对吗?

回答

25

总之:你不行。

.NET 4.0是一个全新的CLR(4.0),据我所知,不能与.NET 3.5混合使用和/或在VS 2008中使用,对不起。

如果您还可以保证.NET 2.0框架与您的.NET 4同时(并行)在目标机器上,则可以使用.NET 4.0代码中的.NET 2.0程序集。

5

您不能使用较旧的.NET版本以后的.NET Framework版本程序集。

1

我不敢肯定,但我相信你能做到这样(Altough,也许不是RECOMENDABLE但技术上更多钞票。)

由于.Net框架4.0使用diferent CLR和它的更多钞票兼得并排安装...也许你可以尝试将你的4.0程序集加载到4.0 CLR和2.0应用程序中加入到2.0中,并通过Web服务进行通信。

同样,我不确定这是否可行。这只是一些想法。

+1

不,在.Net中没有跨进程通信。你将不得不实现你自己的非托管(COM)通信。 – 2009-12-03 04:03:41

+7

我不明白为什么你不能在两个应用程序之间使用Web服务,一个是使用.Net 2编写的,另一个是使用.Net 4。 – pauloya 2011-08-01 08:20:41

2

CLR 4允许InProc Side by side,但是你仍然会在加载的2.0和4.0代码之间寻找一些互操作的解决方案。

相关问题