|
1.说说你知道的ORM框架?
2.请问对EFCore有了解吗?
3.说说EFCore查询的性能调优小技巧?
4.EFCore 如果通过数据生成实体和DbContext?
5.说说对SaveChanges的理解?
6.说说对EFCore中EntityState的理解。?
7.说说什么是导航属性和引用属性;
8.说说EFCore7 中有哪些新功能 ?
9.EFCore有几种配置映射方式?
10.ASP.NET Core管道里面的Map拓展有什么作用?
11.如何从.NET Framewok升级到ASP.NET Core7?
1.说说你知道的ORM框架?
EntityFramework6
EntityFrameworkCore
SqlSugar
FreeSql
DosORM 等等~~
2.请问对EFCore有了解吗?
有了解。
Entity Framework Core是适用于.NET的新式物件资料库对应程式。其支援LINQ查询、变更追踪、更新 以及结构描述移转。
EF Core透过[资料库提供者外挂程式模型]来搭配使用SQL Server/SQL Azure、SQLite、Azure Cosmos DB、MySQL、PostgreSQL及更多资料库。3..说说EFCore查询的性能调优小技巧?
如果说查询出来的数据,只是做展示,不做增删改查,可以在查询的时候,增加AsNoTracking()方法, 可以提高性能,可以避免在内存中存在副本;
建议在查询的时候,多使用Find()方法,会有限走内存缓存,如果内存已经存在,就不会去数据库中去操 查询数据; 4.EFCore 如果通过数据生成实体和DbContext?
步骤如下:1.Nuget引入 如下程序集- Install-Package Microsoft.EntityFrameworkCore
- Install-Package Microsoft.EntityFrameworkCore.SqlServer
- Install-Package Microsoft.EntityFrameworkCore.Tools
复制代码 2.在Vs中打开工具--nuget包管理器--程序包管理器控制台:命令执行:- Scaffold-DbContext "Data Source=DESKTOP-63QE7M1;Initial Catalog=ZhaoxiEduDataBase;User ID=sa;Password=sa123" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Entity -Force Context ZhaoxiDbContext -ContextDir /
- //注:命令参数应用如下:
- 命令参数:
- -OutputDir *** 实体文件所存放的文件目录
- -ContextDir *** DbContext文件存放的目录
- -Context *** DbContext文件名
- -Schemas *** 需要生成实体数据的数据表所在的模式
- -Tables *** 需要生成实体数据的数据表的集合
- -DataAnnotations
- -UseDatabaseNames 直接使用数据库中的表名和列名(某些版本不支持)
- -Force 强制执行,重写已经存在的实体文件
复制代码 5.说说对SaveChanges的理解。 ?
SaveChanges是以Context为维度的一次提交,对于数据库操作的一切动作,只要是在同一个Context实 例,所有的操作,在调用SaveChanges方法后,统一体现到数据库中去; 6.说说对EFCore中EntityState的理解?
因为EFCore对于数据库的所有操作都是通过上下文DbContext来完成的,且是通过SaveChanges方法统 一落实到数据库中去的;
EntityState是EFCore 在对数据库操作增删改的时候,记录当前被操作的数据对 象和Context的关系,针对与不同的操作,对应的一个状态信息,一共五种状态;一共五种:Detached = 0, 当前对象和context没有任何关系,没有被上下文跟踪
Unchanged=1, 当前对象被context跟踪,数据没有做任何修改
Deleted=2, 当前对象被context跟踪,且标记是数据删除,调用SaveChanges后将会从数据中删 除;
Modified=3, 当前对象被context跟踪,且有属性数据被修改过,调用SaveChanges后将会从数据中 修改;
Added=4 当前对象被context跟踪,且数据并没有存在数据库中,调用SaveChanges后将会新增 到数据库中去;
7.说说什么是导航属性和引用属性?
实体框架 中的导航属性提供了一种在两个实体类型之间导航关联的方法。 导航属性在概念模型中由 NavigationProperty 元素 (CSDL) 定义。 针对对象参与到其中的每个关系,各对象均可以具有导航属性。 使用导航属性,您可以在两个方向上导航和管理关系,如果重数为一或者零或一,则返回 EntityReference,或者如果重数为多个,则返回 EntityCollection。 也可以选择单向导航,这种情况下 可以删除导航属性。8.说说EFCore7 中有哪些新功能?
JSON资料行
查询JSON资料行
ExecuteUpdate 和 ExecuteDelete (大量更新)
更快速的 SaveChanges
9.EFCore有几种配置映射方式?
两种:
1.特性映射
2.通过DbContext中的 OnModelCreating 方法来配置映射;
10.ASP.NET Core管道里面的Map拓展有什么作用?
可以针对不同的路径添加不同的中间件。12.如何从.NET Framewok升级到ASP.NET Core7?
没有办法直接升级,因为是两个完全不相同的平台,但是C#语法差不多。
如果要升级,需要考虑的要点如下:
1、平台更换
2、依赖框架的变化,需要和之前的框架做对比。
3、新平台对于一些新写法尝试Option模式等等
来源:https://www.cnblogs.com/zhendayong/archive/2023/02/22/17141214.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
|