从asp.net迁移到asp.net核心

时间:2017-03-22 19:11:54

标签: c# .net asp.net-core

我发现以下教程如何将表单asp.net迁移到asp.net核心以在Linux上运行项目: https://docs.microsoft.com/en-us/aspnet/core/migration/mvc

不幸的是,当我尝试“配置身份和成员身份”时 我正在复制代码到项目看起来像.net core

没有这样的命令

例如,这部分:

  

然后,打开Startup.cs并更新要使用的ConfigureServices()方法   实体框架和身份服务:

public void ConfigureServices(IServiceCollection services)
{
  // Add EF services to the services container.
  services.AddEntityFramework(Configuration)
    .AddSqlServer()
    .AddDbContext<ApplicationDbContext>();

  // Add Identity services to the services container.
  services.AddIdentity<ApplicationUser, IdentityRole>(Configuration)
    .AddEntityFrameworkStores<ApplicationDbContext>();

  services.AddMvc();
} 

ApplicationUser.cs

的情况也是如此
using Microsoft.AspNetCore.Identity.EntityFrameworkCore;

namespace NewMvc6Project.Models
{
  public class ApplicationUser : IdentityUser
  {
  }
}

和ApplicationDbContext.cs

using Microsoft.AspNetCore.Identity.EntityFramework;
using Microsoft.Data.Entity;

namespace NewMvc6Project.Models
{
  public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
  {
    public ApplicationDbContext()
    {
      Database.EnsureCreated();
    }

    protected override void OnConfiguring(DbContextOptions options)
    {
      options.UseSqlServer();
    }
  }
}

教程是否错误或者我应该安装一些新包?

1 个答案:

答案 0 :(得分:0)

我以为你在使用VS2015。 因为我在VS2017中尝试了一些扩展方法已经改变了。

services.AddEntityFrameworkSqlServer();

您是否尝试过在NuGet中升级软件包?

VS2017中的新Web项目为ASP.NET Core提供了1.1.1版软件包 作为默认值,但VS2015我认为它给出版本1.0.0