繁体   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