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