【问题标题】:How to upgrade ASP.NET 5 from Beta6 to Beta7如何将 ASP.NET 5 从 Beta6 升级到 Beta7
【发布时间】:2015-09-09 02:13:46
【问题描述】:

ASP.NET 5 vNext 从 Beta 6 升级到 Beta 7 的备忘单是什么?

【问题讨论】:

  • 这个帖子更适合github
  • 不幸的是,我认为有太多重大变化,甚至缺少功能,以至于没有一个简单的备忘单。 ASP.NET MVC Boilerplate 可能有助于向您展示如何翻译一些内容。
  • @victor-hurdugaci github 问题不可协作编辑,非协作者不可编辑 asp.net 5 wiki。 DFowler 还评论说,他不希望 beta 升级说明污染 wiki。 SO 似乎很适合这个。

标签: asp.net-core


【解决方案1】:

先决条件

  • 从 Beta 6 开始 (see prior notes)
  • 安装Web Tools 2015 (Beta7)
  • 升级到 beta7:dnvm upgrade
  • 如果您愿意,可以安装 x64:dnvm install 1.0.0-beta7 -arch x64 -r clr
  • 更新别名:dnvm alias default 1.0.0-beta7 x64
  • 设置为永久默认dnvm use default -p

Beta 7 更改

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

  • global.jsonbeta6 更新为beta7
  • 在 project.json 文件中搜索 beta6" 并替换为 beta7"
  • 在 project.json 中,将 Microsoft.Framework.Runtime.Abstractions 替换为 Microsoft.Dnx.Runtime.Abstractions
  • 在 project.json 中,将 Kestrel 替换为 Microsoft.AspNet.Server.Kestrel
  • using Microsoft.Framework.Runtime; 替换为using Microsoft.Dnx.Runtime;
  • configuration.GetConfigurationSection 替换为configuration.GetSection
  • configuration.Get("MyConfigKey") 替换为configuration["MyConfigKey"]
  • 在 Startup.cs 中,将 services.AddMvc().Configure<MvcOptions>(options => 替换为 services.AddMvc(options =>

具有等效标识错误的多个程序集

我的单元测试项目有这个错误:

Multiple assemblies with equivalent identity have been imported: '<in-memory assembly>' and '<in-memory assembly>'

This blog 建议将 System.* 引用移至框架特定部分,我发现完全删除它们也有效。

标签生成器

人们不能再使用TagBuilder.ToString() 来获取HTML,而是必须使用它实现的IHtmlContent。见TagBuilder InnerHtml in ASP.NET 5 MVC 6

实体框架

  • 迁移的新语法:dnx ef migrations add MyMigrationdnx ef database update

其他

【讨论】:

  • 我很高兴我不是唯一遇到那个奇怪的“内存中汇编”错误的人!让我疯狂了好一阵子。
  • 如果您还没有,请将package.json 中的Kestrel 重命名为Microsoft.AspNet.Server.Kestrel
  • "dnvm alias default 1.0.0-beta7 x64" 给我以下错误:找不到接受参数'x64'的位置参数
  • 关闭并重新打开命令提示符解决了上述问题。
  • 我可以从我的单元测试项目中更新它吗?我的单元测试使用 .NET 4.5.2。我想升级它。
【解决方案2】:

执行建议的“将 Microsoft.Framework.Runtime.Abstractions 替换为 Microsoft.Dnx.Runtime.Abstractions”

解决了我遇到的错误“已导入具有相同标识的多个程序集:'' 和 ''”

当我尝试执行升级时。

【讨论】:

  • 这是一个问题,但由 System.* 引用引起。 Microsoft.Framework.Runtime.Abstractions 在 Beta7 中不存在,因此您不能不升级它
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-12-04
  • 1970-01-01
  • 2018-06-02
  • 1970-01-01
  • 1970-01-01
  • 2016-01-06
  • 2016-06-29
相关资源
最近更新 更多