接线员'!'无法应用于类型'方法组的操作数'

时间:2015-05-22 04:16:38

标签: c# linq

可能是重复但相关的问题,我还没有找到有效的解决方案。试图计算字符串中多个字符的位数。

获取错误:'!'不能应用于类型'方法组'

的操作数
line.TakeWhile(!Char.IsLetterOrDigit).Count())

2 个答案:

答案 0 :(得分:2)

您需要在此处使用lambda表达式而不是方法组语法:

line.TakeWhile(x => !Char.IsLetterOrDigit(x)).Count())

答案 1 :(得分:2)

问题正是错误告诉你的:你不能在函数上使用!Char.IsLetterOrDigit) - 一个简单的解决方案是将它扩展为lambda:

line.TakeWhile(c => !Char.IsLetterOrDigit(c)).Count())