我想从2014年1月发布的ASP.NET MVC和WebAPI开始。
ASP.NET MVC 5.1、ASP.NET Web 2.1和ASP.NET网页3.1 (参考资料: NuGet)
我创建了一个新的ASP.NET Web应用程序(.NET 4.5.1) >“空模板”> "Web“选中的>”无身份验证“
在NuGet软件包文件夹下,我检查了这个Web空项目引用的库的版本,发现所有DLL (NewtonSoft除外)都有类似于5.1的版本。
这对于ASP.NET MVC包也是如此。
问:所有库都被版本化为5.1 .,事件ASP.NET MVC称为5.1,那么为什么ASP.NET WebAPI被命名为2.1 --它背后的任何特定原因或历史?
发布于 2014-06-23 09:58:42
版本2.1是您应该注意的版本,因为这是ASP.NET Web包的命名版本,也是唯一正式使用的数字。
库版本号5.x是构成WebAPI2.1的各个组件库的内部版本,正如您注意到的那样,5.1不是巧合,因为Web与所有其他Web内容共享一个公共根。因此,从技术上讲,Web有两种不同的版本控制方案,一种是产品的正式版本,另一种是库版本。
如果您查看用于NuGet WebAPI2.2的ASP.NET包,您将看到ASP.NET是
https://www.nuget.org/packages/Microsoft.AspNet.WebApi/5.2.0-rc
这实际上意味着这是ASP.NET WebAPI2.2Version5.2.0RC,这令人困惑。但是,有一种方法认为“WindowsWebAPI2.2”是产品的名称,而5.2.0是产品的内部版本号--与Windows8(名称)和Windows6.2.9200(内部版本)一样。
发布于 2014-06-23 09:30:01
原因是ASP.NET MVC和ASP.NET Web 经常一起使用在ASP.NET解决方案中,它们是两个不同的框架。
ASP.NET Web 是继MVC之后集成到ASP.NET中的一个较新的产品,因此在版本控制方面存在差异。
另外,Razor也是一个单独的框架,它是单独开发/发布的,并且有它自己的版本控制(3.0.0.0),另外一些在ASP.NET下使用的其他库也有不同的版本。
https://stackoverflow.com/questions/24362315
复制相似问题