标签:
在Visual Studio 2015 RTM和Windows 10正式发布之前,微软把开源.NET升级到了beta5,带来了一些增强和改变。和Visual Studio 2015 RC一起安装的ASP.NET 5运行时是beta4,前几天微软发布了这个运行时的beta5版本。整个升级包括如下几个方面:
ASP.NET 5 Beta5 Now Available中不仅详细介绍了上述增强,也给出了一个大致的升级步骤, 同时也给出了一个破坏变更的列表,主要的变化是Configuration部分的命名空间改变和程序集的整理,以及Entity Framework 7数据迁移的变化。具体参见:https://github.com/aspnet/announcements/issues?q=milestone%3A1.0.0-beta5
把ASP.NET 5的项目代码从beta 4升级到beta5遵从了文章ASP.NET 5 Beta5 Now Available文章中提到的基本步骤。
1,安装或升级DNVM。
如果没有.NET Version Manager (DNVM),需要通过如下代码来安装(如果已经有了执行如下代码也会升级到最新版本):
1: @powershell -NoProfile -ExecutionPolicy unrestricted -Command "&{$Branch=‘dev‘;iex ((new-object net.webclient).DownloadString(‘https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.ps1‘))}"
理论上,执行以上代码就可以把dnvm安装(或升级)到"beta6-10395",明显的不同是多了一个"update-self"的命令。
如果在已经有beta4的dnvm,那么执行上述命令后,需要重启命令行窗口才能看到最新的dnvm版本;当然我也遇到一个奇怪的问题,就是执行上述代码后死活不能升级,最后无奈,只好先执行第二步(见:升级DNX运行时)的特殊步骤,然后就会看到dnvm也自动升级为最新版本了。
2,升级DNX运行时。
如果正常升级了DNVM,那么无需去设置"DNX_FEED"环境变量,因为最新版的DNVM的默认地址已经是"https://www.nuget.org/api/v2"。现在只需要执行"dnvm upgrade"就可以下载并安装ASP.NET 5的Beta5运行时了(默认是clr x86),也会自动把这个运行时设置激活状态和default别名。
当然如果没有升级DNVM,那么可以设置"DNX_FEED",然后再升级DNX运行时。
也可以不设置"DNX_FEED",直接执行"dnvm upgrade",来先升级到beta5的预发布版本(beta5-12103)。升级到beta5的预发布版本会同时升级dnvm,然后再次执行"dnvm upgrade",升级到beta5正式发布版本。(这里说的就是上面提到的特殊步骤)。
3,修改project.json中的包引用。
打开解决方案中所有项目的project.json文件的,把其中所有后缀"beta4"的包修改为"beta5",保存project.json文件后,VS会自动更新到最新的beta5的包。
需要注意的是,xunit的相关包要改为引用beta5的编译版本,即"xunit": "2.1.0-beta3-build3029","xunit.runner.dnx": "2.1.0-beta3-build99"。
和Configuration相关的包,从"Microsoft.Framework.ConfigurationModel"修改为"Microsoft.Framework.Configuration"。
把"Interfaces"后缀的包修改为"Abstractions"。
4,解决代码变更。根据上篇文章提到的更新尤其破坏变更列表(https://github.com/aspnet/announcements/issues?q=milestone%3A1.0.0-beta5),来修改编译有问题的代码。主要的修改有:
标签:
原文地址:http://www.cnblogs.com/shanyou/p/4628484.html