日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

EF Core 插件 —— ToSql

發布時間:2023/12/4 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 EF Core 插件 —— ToSql 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

背景

在使用Entity Framework Core進行開發時,若不使用Logger很難查看到一個查詢的SQL語句,同時也有些開發者因為不了解EF Core哪些Linq可以Translate成SQL,哪些不能而踩坑導致全表查詢的,因此開發了Pomelo.EntityFrameworkCore.Extensions.ToSql。開發者們可以使用這個插件來做查詢的單元測試,或對EF Core進行查詢語句的簡單測試。

該項目在GitHub中開源,也歡迎廣大開發者加入QQ群522943763提出意見與建議。

使用

首先,在項目中引入Pomelo.EntityFrameworkCore.Extensions.ToSql 2.0.0-preview3-10000。

在欲輸出SQL語句的類中引用命名空間Microsoft.EntityFrameworkCore,并在欲輸出SQL語句位置添加.ToSql()。

var MySqlContext = new MySqlContext(); Console.WriteLine(MySqlContext.Models.Where(x => x.Title.Contains("Pomelo")).Where(x => new[] { 2, 3, 5, 7, 11 }.Contains(x.Count)).Where(x => x.Title.Skip(3).Take(4).ToString() == "Hello").ToSql());

在欲輸出未能翻譯的Linq語句處,執行.ToUnevaluated()即可返回未能成功執行的Linq代碼:

var MySqlContext = new MySqlContext();var unevaluated = MySqlContext.Models.Where(x => x.Title.Contains("Pomelo")).Where(x => new[] { 2, 3, 5, 7, 11 }.Contains(x.Count)).Where(x => x.Title.Skip(3).Take(4).ToString() == "Hello").ToUnevaluated();foreach (var x in unevaluated) {Console.WriteLine(x); }

運行結果

通過調用.ToSql()和.ToUnevaluated()來查看成功與失敗的翻譯結果,成功的SQL語句和失敗的Linq語句在上圖結果中一目了然。

相關文章:

  • 全球首發免費的MySql for Entity Framework Core

  • .NET Core 使用Dapper 操作MySQL

  • 在.NET Core中使用MySQL5.7的JSON類型字段

  • 全文索引 - Pomelo.EFCore.MySql

  • Entity Framework Core 生成跟蹤列

  • 在Apworks數據服務中使用基于Entity Framework Core的倉儲(Repository)實現

  • Entity Framework Core的貼心:優雅處理帶默認值的數據庫字段

  • Entity Framework Core 實現MySQL 的TimeStamp/RowVersion 并發控制

  • Entity Framework Core 軟刪除與查詢過濾器

  • Entity Framework Core 命名約定

  • 全文索引 - Pomelo.EFCore.MySql

  • Entity Framework Core 批處理語句

原文地址:http://www.1234.sh/post/full-text-index-in-pomelo-efcore-mysql


.NET社區新聞,深度好文,微信中搜索dotNET跨平臺或掃描二維碼關注

總結

以上是生活随笔為你收集整理的EF Core 插件 —— ToSql的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。