Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在LINQ中使用where和like子句计算列数_C#_Linq - Fatal编程技术网

C# 如何在LINQ中使用where和like子句计算列数

C# 如何在LINQ中使用where和like子句计算列数,c#,linq,C#,Linq,这是我的ms sql查询- select COUNT(*) from InvoiceDetails where InvoiceId like '%XXX-SSS%' 如何在LINQ中编写相同的查询 var count=_dbcontent.InvoiceDetails.Where(dr => dr.InvoiceId.Contains("XXX-SSS")).Count; Count将对所有记录进行计数这非常简单 var yourEtityObject = (from t In

这是我的ms sql查询-

  select COUNT(*) from InvoiceDetails where InvoiceId like '%XXX-SSS%'
如何在LINQ中编写相同的查询

var count=_dbcontent.InvoiceDetails.Where(dr => dr.InvoiceId.Contains("XXX-SSS")).Count;
Count
将对所有记录进行计数

这非常简单

var yourEtityObject = 
(from t In InvoiceDetails 
where 
t.InvoiceId.Contains("XXX-SSS")
select t).Count();
试着跟随

InvoiceDetails.Count(el => el.InvoiceId.Contains("XXX-SSS"))

like运算符类似于Linq中的contains函数。所以,在过滤之后,获取记录数

YourDBContext.YourTableModel.Count(x=>x.YourColumn.Contains("YourValue")); 

但这仅在列为字符串类型时有效。

尝试以下操作
InvoiceDetails.Count(a=>a.InvoiceId.Contains(“XXX-SSS”)
请不要只发布SQL并请求转换。至少显示一个类模型。另外,告诉您针对的是哪种类型的LINQ(到实体?),并展示您自己的第一次努力。它们向我们阐明的内容比您想象的要多。
ToList
不计算
可枚举项中的条目。
您仍然需要一个
.count
.count()
之后。我仍然不确定
ToList
是否合适。如果您有许多条目与
Where
匹配,则当
ToList
将所有条目向下拉到客户端时,客户端和数据库之间会有不必要的流量。
YourDBContext.YourTableModel.Count(x=>x.YourColumn.Contains("YourValue"));