【问题标题】:Run .NET4 project on 2.0 runtime [duplicate]在 2.0 运行时运行 .NET4 项目 [重复]
【发布时间】:2012-10-15 20:22:21
【问题描述】:

我们想将我们的产品从 .NET3.5 升级到 4.0。但是我们不控制 exe,我们只是一个库。应用程序由客户创建。 有什么方法可以让他们继续使用他们的 .NET3.5 exe 吗?例如。我们可以创建一个 .NET3.5 的包装器并在内部调用我们的新代码吗?

编辑:这与 .NET4 的特定功能无关。我正在考虑一个迁移策略:我们可以升级我们的 dll 并保持与旧 exe 的兼容吗?

【问题讨论】:

  • 您想使用哪些 .Net 4.0 功能?
  • .NET 4 究竟需要什么?
  • 就我个人而言,我确实讨厌图书馆供应商强迫我升级我的应用程序。事实上,我不能在我们的商业产品中使用最新的 DevExpress 组件的原因之一。
  • @UweKeim 这有点混杂 - 我也讨厌供应商不会升级到新框架,即使它会提供显着的好处。 (不过,我同意,无缘无故的强制升级是可怕的。)

标签: .net .net-4.0 .net-3.5


【解决方案1】:

为了使用您的库,可执行文件(通常)也需要编译为 .NET 4。否则,他们将无法添加对您项目的引用。

您可以通过让他们通过 COM 使用您的程序集而不是直接引用它来解决此问题,但这将比强制升级到 .NET 4 更痛苦,因为您仍然会需要在机器上部署 .NET 4。

【讨论】:

    【解决方案2】:

    我会保留两个版本:3.5 和 4.0,让客户知道他们应该考虑升级。当然,此升级应该免费,让每个人都满意(客户总是喜欢提供新功能的新东西,但他们很可能不急于支付他们没有要求的东西)。

    下一步是在未来的最后期限内确定一个合理的距离(再次让您的客户知道),在此之后 3.5 版本应该被冻结:它保持原样,现有用户仍将得到支持,但您'不会再向新客户提供它并且 4.0 版本是获得新功能的版本。

    或者您只是分叉项目并同时维护 3.5 和 4.0 版本(最终取决于决策者)。

    【讨论】:

      猜你喜欢
      • 2019-12-12
      • 1970-01-01
      • 2013-07-30
      • 2015-08-19
      • 2012-04-08
      • 2023-01-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多