EF core三种建模模式:DB first / Model first / Code first
反向工程:根据数据库表来反向生成实体类
应用场景:通过旧的数据库生成新的项目
命令:
Scaffold-DbContext 后面跟上数据库的链接字符串
Scaffold-DbContext 'Server=.;Database=demo1;Trusted_Connection=True;MultipleActiveResultSets=true' Microsoft.EntityFrameworkCore.SqlServer
注意
1、生成的实体类可能不能满足项目的要求,可能需要手工修改或者增加配置。
2、再次运行反向工程工具,对文件所做的任何更改都将丢失。
3、不建议把反向工具当成了日常开发工具使用,不建议DBFirst。
---------------------------------------------------------split-----------------------------------------------------------------
EF core是基于 ADO .net
SQL Server Profiler查看SQLServer数据库当前执行的SQL语句。
存在存在合法的C#语句无法被翻译为SQL语句的情况
var books = ctx.Books.Where(b => IsOK(b.Title));
private static bool IsOK(string s)
{
return s.Contains("张");
}
遇到EF Core无法支持的C#语法怎么办?变换写法或者写原生SQL。
因篇幅问题不能全部显示,请点此查看更多更全内容