.net core下使用EF 把数据库的字段更新到项目,
-Force为更新
在没有业务代码的情况下 可以直接使用语句把数据库完全映射过来
使用-DataAnnotations -UseDatabaseNames 来按照原有的结构一致复制过来,如果有业务代码,有需要增加一个表,可以先生成到一个自定义DbContext,然后再把自定义生成的字段复制到原有的DbContext里面。在Startup.cs中配置EF服务注册:
//配置EF服务注册
services.AddDbContext<DBContext>(options =>
{
options.UseSqlServer(Configuration.GetConnectionString("SqlConnection"));
});
Scaffold-DbContext "Data Source=xxx;Initial Catalog=xxxx;User ID=xxxx;Password=xxx" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Force
或者
Scaffold-DbContext "Data Source=xxx;Initial Catalog=xxx;User ID=xxx;Password=xxx" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context xxxDBContext -Tables xxxTable -DataAnnotations -UseDatabaseNames -Force
-OutputDir *** 实体文件所存放的文件目录
-ContextDir *** DbContext文件存放的目录
-Context *** DbContext文件名
-Schemas *** 需要生成实体数据的数据表所在的模式
-Tables *** 需要生成实体数据的数据表的集合
-DataAnnotations -UseDatabaseNames 直接使用数据库中的表名和列名(某些版本不支持)
-Force 强制执行,重写已经存在的实体文件
信息加载中,请等待
微信客服(速回)
微信客服(慢回)