【发布时间】:2010-04-06 12:02:21
【问题描述】:
我正在遵循提示here,试图利用在枚举器被触发之前不会创建 sql 的语句。但是,我在下面的代码中收到以下错误。我使用的是 Linq2Entities,而不是 linq2sql。有没有办法在 Linq2entities 中做到这一点?
方法'Boolean Like(System.String, System.String)'不能在客户端使用;它仅用于转换为 SQL。
query = db.MyTables.Where(x => astringvar.Contains(x.Field1));
if (!String.IsNullOrEmpty(typeFilter))
{
if (typeFilter.Contains('*'))
{
typeFilter = typeFilter.Replace('*', '%');
query = query.Where(x=> SqlMethods.Like(x.Type, typeFilter));
}
else
{
query = query.Where(x => x.Type == typeFilter);
}
}
注意:db 是到 sql server 的实体映射。
【问题讨论】:
标签: .net linq-to-entities