如何将ASP.NET 5(vnext)从Beta5升级到Beta6

时间:2015-07-31 11:52:42

标签: asp.net-core

从ASP.NET v5 Beta4升级到Beta5有点痛苦,升级到Beta6有多难?

beta4-beta5答案这样的备忘单会很方便......

2 个答案:

答案 0 :(得分:7)

升级很顺利。这是备忘单

<强>先决条件

  • 升级到测试版6:dnvm upgrade
  • 如果您愿意,请安装x64:dnvm install 1.0.0-beta6 -arch x64 -r clr
  • 更新别名:dnvm alias default 1.0.0-beta6 x64
  • 将其设为永久默认dnvm use default -p
  • 从Beta 5开始。如有必要,请从Beta 4 to Beta 5升级

Beta 6更改

(并非所有更改都适用于您的项目)

  • global.jsonbeta5更新为beta6
  • 搜索beta5"的project.json文件并替换为beta6"
  • 添加对Microsoft.AspNet.Mvc.Core
  • 的引用
  • app.UseErrorPage(ErrorPageOptions.ShowAll);更改为app.UseErrorPage();
  • Context.Authentication.SignIn(...)更改为SignInAsync(...)
  • app.UseSession(c=> c.IdleTimeOut = 30)更改为app.UseSession()
  • 将Autofac依赖关系从"Autofac.Framework.DependencyInjection": "4.0.0-beta5-90"升级到"Autofac.Framework.DependencyInjection": "4.0.0-beta6-150"

<强>部署

完成

其他修正可能会在ASP.NET announcements repo

上找到

答案 1 :(得分:0)

更新上述答案

您正在使用EF并收到以下错误,

  

类型或命名空间名称&#39;迁移&#39;名称空间中不存在Microsoft.Data.Entity.Relational&#39;

然后请删除以下命名空间

  

使用Microsoft.Data.Entity.Relational.Migrations.Infrastructure

并添加以下命名空间

  

使用Microsoft.Data.Entity.Migrations.Infrastructure

此外,您还必须重写几个属性,例如从以下属性中删除.GenerateValueOnAdd()函数。
一些属性的.StoreGeneratedPattern(StoreGeneratedPattern.Identity)函数替换为.UseSqlServerIdentityColumn()函数。

    b.Property<string>("Id")
        .GenerateValueOnAdd()
        .Annotation("OriginalValueIndex", 0);

你必须在少量文件中做上述事情。