EF Core2.0在.Net Core2.0上的简单使用

新建.Net Core2.0项目,

Nuget添加Entity Framework

Install-Package Microsoft.EntityFrameworkCore.SqlServer

Install-Package Microsoft.EntityFrameworkCore.Tools

Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design

新建数据库,使用Database First

在控制台写入

Scaffold-DbContext “Server=.; Database=AppcDB;Persist Security Info=True;User ID=sa;password=123123;” Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models

  

然后就是生成上下文以及各种实体,可以愉快的玩耍了

忽然发现上下文中出现了数据库连接:

果断注释掉,按照传统来,在appsettings.json文件中配置数据库连接

{
  "ConnectionStrings": {
    "SqlConnection": "Data Source=.;Initial Catalog=AppcDB;User ID=sa;Password=123123;MultipleActiveResultSets=true;"
  },
  "Logging": {
    "IncludeScopes": false,
    "LogLevel": {
      "Default": "Warning"
    }
  }
}

  在Startup.cs的ConfigureServices方法中进行注册上下文服务(别忘了引用命名空间,EF以及Model)

public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();
            services.AddDbContext<AppcDBContext>(options =>options.UseSqlServer(Configuration.GetConnectionString("SqlConnection")));

            
        }

  现在是不是可以尽情的使用了,一运行,我去

什么情况,看意思就知道啦,上下文只有无参数构造函数,这边用不了,那就加上一个喽:

找到上下文“public partial class AppcDBContext : DbContext”添加个参数就是了:

 public AppcDBContext(DbContextOptions<AppcDBContext> options)
        : base(options)
        { }

  好了,大功告成,记录一下,初次使用net core

原文地址:https://www.cnblogs.com/luwenlong/p/7804227.html