【问题标题】:.NET assembly version - what's the difference (based on System.Web.Mvc experience).NET 程序集版本——有什么区别(基于 System.Web.Mvc 经验)
【发布时间】:2014-07-16 18:45:08
【问题描述】:
我在 Visual Studio 2013 中打开了 MVC3 项目,由于 VS2013 支持开箱即用的 MVC4+,我有两个选择:
- 将 MVC3 DLL (System.Web.Mvc 3.0.X.X) 下载到我的项目中
- 添加对 MVC4 DLL (System.Web.Mvc 4.0.X.X) 的引用并修复 Web.config 条目
我想了解几件事:
- 是与 MVC 框架版本等效的程序集版本(MVC4 中可用的新功能是通过更新版本的程序集等导入的)
- 为什么包(例如在 NuGet 上)称为 System.AspNet.Mvc 而程序集称为 System.Web.Mvc(与命名空间相同)
Razor、WebPages、Helper 等也是如此。
提前致谢:)
【问题讨论】:
标签:
c#
asp.net-mvc
.net-assembly
【解决方案1】:
“为什么包(例如在 NuGet 上)称为 System.AspNet.Mvc 而程序集称为 System.Web.Mvc(与命名空间相同)”
这可能是因为该包中除了 System.Web.Mvc 之外还包含许多程序集。由于推荐的方法是按 DLL 打包,而这个包不属于这种常见做法,所以不要误导您认为该包只是一个 DLL,他们给它一个独特的名称。
它还可能有助于将其与其他可能类似命名的 MVC 框架区分开来。我们经常与其他 C# 编码人员一起将其称为“MVC”,但这是一种非常通用的架构模式。更具体地说,它是 ASP.NET MVC。
"是相当于 MVC 框架版本的程序集版本(MVC4 中可用的新功能是与较新版本的程序集等一起导入的)"
是的,如果您获得 MVC 4 包,那么您将拥有该版本的新功能。