Entity framework 无法隐式转换类型';字符串';至';布尔';linq查询
我有一个LINQ查询:Entity framework 无法隐式转换类型';字符串';至';布尔';linq查询,entity-framework,linq-to-entities,Entity Framework,Linq To Entities,我有一个LINQ查询: var query = from row in context.data_vault group row by row.STATE into g select new { State = g.Key, Count = g.Sum(row => row.SCORE), Phones = g.Count(c =>
var query = from row in context.data_vault
group row by row.STATE into g
select new {
State = g.Key,
Count = g.Sum(row => row.SCORE),
Phones = g.Count(c => c.PHONE)
};
执行时,我得到以下错误:
无法在g.Count处将类型“string”隐式转换为“bool”(c=>
c、 (电话)
该方法需要一个返回布尔值的函数。看起来您的手机属性是一个字符串,因此这将不起作用
你到底想数什么
也许你想要所有非空的电话号码或类似的,试试看
g.Count(c => !String.IsNullOrWhitespace(c.PHONE))
该方法需要一个返回布尔值的函数。看起来您的手机属性是一个字符串,因此这将不起作用
你到底想数什么
也许你想要所有非空的电话号码或类似的,试试看
g.Count(c => !String.IsNullOrWhitespace(c.PHONE))
你想数数什么?如果您想计算非空或非空的电话号码,您需要使用
g.count(c=>String.IsNullOrEmpty(c.phone)==false)
您想计算什么?如果要计算非空或非空电话号码,则需要使用g.count(c=>String.IsNullOrEmpty(c.phone)==false)
count()
需要一个谓词—返回布尔值的东西。你让它返回一个字符串。我不知道你在找什么,但如果你想计算非空白电话的数量,你可以将其修改为
var query = from row in context.data_vault
group row by row.STATE into g
select new {
State = g.Key,
Count = g.Sum(row => row.SCORE),
Phones = g.Count(c => c.PHONE != "")
};
Count()
需要一个谓词-返回布尔值的东西。你让它返回一个字符串。我不知道你在找什么,但如果你想计算非空白电话的数量,你可以将其修改为
var query = from row in context.data_vault
group row by row.STATE into g
select new {
State = g.Key,
Count = g.Sum(row => row.SCORE),
Phones = g.Count(c => c.PHONE != "")
};
你想数什么?无法计算字符串属性。要计算什么?不能对字符串属性计数。