我现在对dotnet中的微软支持和生命周期感到困惑。
目前我有一些旧的类库,目标是" .Net FrameWork 4.5 "
我在新的ASP.Net 5网络服务中使用这些类库。
我的网络服务的目标平台是" DNX SDK版本1.0.0-rc1-final "
为了支持我的旧库,我从json文件中删除了 DNX5.0 ,只剩下 DNX451 。
我也将我的CLass-library版本更改为4.5以支持 DNX 4.5.1 。
3天前我从MSDN读了这篇文章后,我发现他们正在放弃
支持 .NET 4,4.5和4.5.1 。
所以问题是:在dotnet 4.5之上构建我的类库以使它们与dnx 4.5.1一起工作是不是很糟糕?
或者我是以错误的方式做到这一点,并且应该从库的新框架开始,并等待dnx452让它们工作?
答案 0 :(得分:3)
支持终止公告引起了很多混乱。它仅适用于已安装的 .NET版本。您必须记住,仍有很少的机器安装了低于4.5.2的版本。几乎所有这些都是由Windows Update更新的。
因此,如果您致电Microsoft支持并且您对未更新的计算机存在问题,那么您已经遇到了一个非常大的问题,让他们注意。因为他们首先推荐的是“更新到4.5.2”,你将会有一场相当大的战斗来解释为什么这是不可能的。
“dnx451”中的4.5.1是 api版本。与运行时版本不同,在您自己的机器上也有不同的实践。由于它适用于目标包,因此C:\ Program Files(x86)\ Reference Assemblies中存在这些文件。看看是否能够得到这片土地,请注意所有.NET框架组件是如何存在的。
但它们不用于运行程序的程序集。它们很特殊,它们只包含元数据而根本没有代码。精神模拟它们如何制作的最佳方式是假设Microsoft选择了框架的特定发布版本并通过剥离所有运行时详细信息的工具运行其程序集。因此冻结了api合同。
在运行时,您可以使用计算机上实际安装的程序集。你现在很可能是4.6.1。在用户的机器上,当前很可能是4.5.2,如果他升级到Win10,则为4.6。
因此,定位dnx451 不会产生支持问题。