Microsoft dotnet(DNX)生命周期



我现在对微软在dotnet中的支持和生命周期有点困惑。

目前,我有一些针对".Net FrameWork 4.5"的旧类库

我在我新的ASP.Net 5 web服务中使用这些类库。

我的web服务的目标平台是"DNX SDK 1.0.0-rc1-final"

为了支持我的旧库,我从json文件中删除了DNS5.0,只剩下DNX451

我还将我的CLass库版本更改为4.5,以支持DNX 4.5.1

在我3天前从MSDN上读到这篇文章后,我发现他们正在放弃

支持.NET 4、4.5和4.5.1.

所以问题是:在dotnet4.5之上构建我的类库,让它们与dnx14.5.1协同工作,这不好吗?

或者我这样做的方式不对,应该从库的新框架开始,等待dnx452让它们发挥作用?

支持公告的结束引起了很多混乱。它仅适用于安装的.NET版本。你必须记住,现在很少有机器安装的版本低于4.5.2。实际上,所有这些都是由Windows Update更新的。

因此,如果你打电话给微软支持部门,发现一台没有更新的机器有问题,那么你就已经在引起他们的注意方面遇到了很大的问题。因为他们会建议的第一件事是"更新到4.5.2",你会有一场相当大的战斗来解释为什么这是不可能的。

"dnx451"中的4.5.1是api版本。与运行时版本不同,在您自己的机器上也有不同的实践。由于它适用于目标包,因此C:\Program files(x86)\Reference Assemblys中存在的文件。看一看,了解情况,注意所有.NET框架程序集都在那里。

但是它们不是运行程序所使用的程序集。它们很特别,只包含元数据,根本不包含代码。最好的心理建模方法是假设微软选择了一个特定版本的框架,并通过一个去掉所有运行时细节的工具运行其程序集。从而冻结了api合约。

在运行时,您使用实际安装在计算机上的程序集。你现在的成绩很可能是4.6.1。在您的用户的机器上,如果他升级到Win10,目前很可能是4.5.2、4.6。

因此,以dnx451为目标,不会造成支持问题。

最新更新