gpt4 book ai didi

C# .Net 框架版本控制

转载 作者:行者123 更新时间:2023-11-30 12:53:49 24 4
gpt4 key购买 nike

如果我构建一个解决方案,其中所有项目都在 targetFrameworkVersion=2.0 下,但其中一个项目的 targetFrameworkVersion=3.5 和

  1. 3.5 个特征都没有用到
  2. 使用了 3.5 的一些功能,但从未实例化调用 3.5 代码的类
  3. 3.5 的一些特性在某些类中使用,这些类被实例化但 3.5 中的代码从未被调用
  4. 调用3.5代码

最佳答案

这取决于您所说的“功能”是什么意思。有编译时功能,如 var 关键字和 lambda 表达式,还有运行时功能,如 LINQ 或 WCF,需要 .NET 3.x 运行时中的库。

我假设您使用的是 Visual Studio 2008,它将处理所有编译时功能。如果您使用的只是编译时功能,那么在所有情况下一切都会正常工作。我在当前项目中经常这样做。

如果您使用的是运行时功能,那么我相信这将是这样的:

  1. 一切都会顺利进行。
  2. 我想这也行。
  3. 这取决于静态函数何时进行 JIT 以及您是否有任何 3.5 库在静态函数中引用代码。
  4. 可能 MissingMethodException 当调用包含 3.5 库功能的函数时。

与其担心所有这些,如果您打算使用运行时功能,我会简单地向 App.config 添加一个 key ,表明需要 3.5 运行时,它会检查启动并在它不存在。那么你就不需要弄清楚所有这些排列,你的应用程序会更稳定。

关于C# .Net 框架版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1520607/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com