EntityFramework Core自动返回SQL语句

【导读】给各位拜年了,开年第一篇,后续我们介绍EF Core 5.0相关新特性

自动返回SQL语句

当执行LINQ查询时,EF Core 5.0提供了ToQueryString扩展方法返回生成的SQL语句

比如,执行如下LINQ查询

var name = "jeffcky";
var user = _context.Users.Where(d => d.Name == name);
var sql = user.ToQueryString();
DECLARE @__name_0 nvarchar(4000) = N'jeffcky';

SELECT [u].[Id], [u].[Birth], [u].[Email], [u].[Name], [u].[Phone]
FROM [Users] AS [u]
WHERE [u].[Name] = @__name_0

当然所生成的SQL语句肯定针对不同数据库而定制,例如,上述生成SQLite如下:

.param set @__name_0 'Jeffcky'

SELECT "d"."Id", "d"."Name",  "d"."Email", "d"."Phone"
FROM "Users" AS "d"
WHERE "d"."Name" = @__name_0

EF Core 5还引入了“调试视图”,在我们选择的调试器中可轻松查看生成的SQL和关联的表达式树,展开DebugView即可深入到EF查询对象。 

学习是一个日益积累的过程,有人说,他希望敲代码到60岁,我呢,只要从事这个行业,就持续不断分享,哎呀,为了文字满三百字才能发布,极力凑够三百字,终于够了吧!

???? EF Core 5.0介绍了ToQueryString扩展方法自动生成针对特定数据库的SQL语句,当然也就包含正确的参数类型声明

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值