c# - 选择什么 .NET 版本?

标签 c# .net .net-4.0 .net-3.5 .net-2.0

我正在为我们的在线 REST 服务编写公共(public) .NET 类库版本,但我无法决定选择哪个版本的 .NET。

我想使用.NET 4.0 版本,但这样编译的类库不能在.NET 2.0 版本中使用?

也许有统计有多少开发者使用.Net 2.0 版本?

最佳答案

没有理由不使用最新版本的框架。您不仅可以获得所有加快开发时间的最新功能和提示,而且还可以利用 Microsoft 在幕后完成的所有错误修复和改进。

以框架的早期版本为目标的唯一优势是徒劳地希望用户不必下载和安装任何东西就可以使用您的应用程序。但这远非万无一失,而且大多是徒劳的。请记住 Windows is not a .NET Framework delivery channel 并且您不能可靠地假设用户将安装 任何 版本的 .NET Framework。即使您坚持指望它与 Windows 捆绑在一起(您不应该这样做),许多用户仍然没有从 Windows XP 升级。即使您指望它会通过 Windows Update 推出,仍有大量用户不使用 Windows Update、不经常使用 Windows Update,或者居住在 Internet 访问不畅/速度慢的偏远地区并且无法下载所有这些更新。

这个故事的寓意是无论如何您都必须为您的应用程序提供适当版本的 .NET Framework。 .NET 4.0 运行时实际上比以前的版本明显,因此没有理由将它们作为目标。团队有worked really hard on that ,他们的努力真的得到了返回。更好的是,正如 atornblad 指出的那样,大多数应用程序都可以针对框架的 Client Profile 版本,该版本删除了一些不常用的部分并将内容再精简了约 16%。

此外,我强烈建议使用一个安装应用程序来自动无缝地为用户安装所需的框架。 Visual Studio 内置支持创建安装应用程序,或者您可以使用第三方安装程序实用程序,如 Inno Setup .这使得使用最新版本变得轻而易举。

关于c# - 选择什么 .NET 版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8850716/

相关文章:

.net - 在 IIS 中托管的 WCF 服务中使用非托管线程不安全库

c# - 反射器和编译器生成的代码

.net - 元数据类型问题

C# 开关/案例共享相同的范围?

asp.net - 何时应为 .NET 4 Framework 设计新的 .NET 项目

c# - 完成 "empty"异步任务的不同方法

c# - 如何删除数组中的第一个元素?

c# - 使用 caliburn micro 设置 RadioButton Checked in code

c# - 仅当鼠标仍在元素上时,如何在 1 秒后在 Jquery 中显示元素?

c# - 使用 asp :FileUpLoad control 上传文件时文件太大