Jer*_*acs 9 c# linq nhibernate linq-to-nhibernate
我有这样的声明:
var vals =
from StandAloneUserPayment saup in _Session.Query<StandAloneUserPayment>()
.Fetch(x => x.RecurringPayments)
where
saup.User.UserId == userId
&& searchString.Contains(saup.FriendlyName, StringComparer.InvariantCultureIgnoreCase)
select
saup;
Run Code Online (Sandbox Code Playgroud)
这似乎正是我应该做的,但是我Contains用下面的消息下划线方法得到整行:
string不包含定义,Contains并且最好的扩展方法重载System.Linq.ParallelEnumerable.Contains<TSource>(System.Linq.ParallelQuery<TSource>, TSource, System.Collections.Generic.IEqualityComparer<TSource>)有一些无效的参数
我究竟做错了什么?
Ry-*_*Ry- 17
试试IndexOf:
searchString.IndexOf(saup.FriendlyName,
StringComparison.InvariantCultureIgnoreCase) != -1
Run Code Online (Sandbox Code Playgroud)
它不起作用的原因是因为Contains接受a 的扩展方法IEqualityComparer<TSource>在a上运行String,而IEnumerable<char>不是实现IEnumerable<string>a,因此a string和a IEqualityComparer<string>不能传递给它.
| 归档时间: |
|
| 查看次数: |
14097 次 |
| 最近记录: |