【问题标题】:How to reference .NET 4.0 assembly within .NET 3.5 projects如何在 .NET 3.5 项目中引用 .NET 4.0 程序集
【发布时间】:2010-12-09 06:07:47
【问题描述】:

我想使用 .NET 4.0 做一些 Office Interop 的工作,但使用 VS2008 和 .NET3.5 开发我的项目的其余部分。

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

【问题讨论】:

    标签: visual-studio-2010 .net-4.0


    【解决方案1】:

    简而言之:你不能。

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

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

    【讨论】:

      【解决方案2】:

      您不能将更高版本的 .NET 框架版本程序集与旧的 .NET 版本一起使用。

      【讨论】:

        【解决方案3】:

        CLR 4 允许InProc Side by side,但您仍然需要查看加载的 2.0 和 4.0 代码之间的一些互操作解决方案。

        【讨论】:

          【解决方案4】:

          对此我不太确定,但我相信你可以这样做(虽然,也许不推荐,但在技术上是可行的。)

          由于 Net Framework 4.0 使用不同的 CLR,并且可以并排安装两者...也许您可以尝试将 4.0 程序集加载到 4.0 CLR 中,将 2.0 应用程序加载到 2.0 中,并通过网络在两者之间进行通信服务。

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

          【讨论】:

          • 不,.Net 中没有跨进程通信。您必须实现自己的非托管 (COM) 通信。
          • 我不明白为什么您不能在 2 个应用程序之间使用 Web 服务,一个用 .Net 2 编写,另一个用 .Net 4 编写。
          猜你喜欢
          • 1970-01-01
          • 2012-07-03
          • 2011-11-02
          • 2011-04-23
          • 2011-09-22
          • 2023-03-18
          • 2014-06-16
          • 2011-07-03
          • 1970-01-01
          相关资源
          最近更新 更多