簡體   English   中英

C#實體linq和linqpad的區別

[英]c# entity linq and linqpad differences

使用分組查詢時,按結果構建時,我得到不同的結果

這在LinqPad中有效,但在代碼中無效

Name = s.Key.FirstName + " " + s.Key.LastName ?? "Unknown User"

這適用於代碼,但不適用於LinqPad

Name = s.Key.FirstName != null ? s.Key.LastName + " " + s.Key.LastName : "Unknown User"

這既適用於

Name = String.IsNullOrEmpty(s.Key.FirstName) ? "Unknown User" : s.Key.FirstName + " " + s.Key.LastName,

誰能解釋為什么

LinqPad默認使用Linq2Sql。

EFLinq2Sql之間的LINQ肯定存在差異。 這幾乎肯定是您遇到的問題。

LINQ根據提供程序實際運行組合查詢的方式來執行不同的操作。 還有很多,但這只是一個開始:

  • Linq2Sql
  • 實體框架
  • Linq對象
  • Linq轉Xml
  • Linq事件( 響應式擴展

您可以編寫自己的LINQ提供程序

盡管如果您告訴Linqpad添加EF庫,它將使用您創建的EF庫:

將EF上下文添加到linqpad

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM