在微软今天发布的博客中,云计算和企业部负责人Scott Guthrie宣布了ASP.NET 5。这是ASP.NET第一次在跨平台和Web开发应用框架的开源版本中亮相。目前,它在Visual Studio 2015 CTP 6中作为预览版存在。
在ASP.NET 5中进行了很多重要的改变,包括使用.NET核心在Windows、Mac或者Linux中运行的能力,重建MVC(Model View Controller,模型视图控制器),不需编译即可在动态开发代码中查看改变,整合著名开源Web开发者工具,使用NuGet依赖管理,配置管理增加新选项,整合并提高HTTP速度性能等,这些改变都包含在一个开源包内。
这些重要改变用一句话概括就是.NET核心成为一个新的模块化运行库,可以在Windows、Mac以及Linux中运行。包括Win10在内的Windows系统仍然可以运行全部的.NET框架,但应用可以被修改成可以在更小的、不是很强大的.NET核心上运行,而且其运行效果等同于Mac和PC。并且.NET核心的模块化结构提供了大量优势,就像Guthrie在博客中提到的三点:
1、你可以为自己的应用部署.NET核心运行库,这意味着你的应用可以和所需的运行库一起运行,而不必事先在主机中安装相应的运行库。你可以在需要的时候升级运行库,而这并不影响其他应用;同理,其他应用升级的时候也不必影响这一应用的运行库。这项改变使得应用部署和框架升级更加简便,应用之间也不会互相干扰。
2、你的应用只依赖于必须的运行库功能,任何无关的功能都不会引发运行库的升级。这将节省很多不必要的时间。
3、你的应用现在可以跨平台运行。微软将会为Windows、Mac OS X和Linux提供一个跨平台的.NET核心版本。今后不管你用什么系统,都将可以运行.NET。虽然跨平台版本的运行库还没有完成,但微软正在GitHub上努力进行开发工作,计划在不久之后推出官方预览版。
其他方面,MVC 6的改进体现在集成MVC、Web API和Web Pages,这将巩固并且简化模型视图编码和云基准配置。这意味着ASP.NET开发者可以和Web.Config说再见,转而使用JSON、XML或者Environment Variables,使用NuGet包可以简化和优化依赖管理。