在我的项目中,我想对单元列表执行搜索操作。我有ObservableCollection<Unit> UnitList
其中包含使用 WCF 服务从 SQL Server 2008 获取的数据。我可以在 SQL Server 中使用 SQL Like 进行搜索,但为此我必须再次调用服务,这会妨碍性能。
为了解决这个问题,我现在尝试使用 LINQ 根据已获取的 ObservableCollection 上的搜索参数过滤数据。我写了以下查询:
var result = from u in UnitList
where u.UnitNo.Contains(this.UnitNo)
&& u.ParcelName.Contains(this.ParcelName)
&& u.TransformationType.Contains(this.TransformationType)
&& u.TenantName.Contains(this.TenantName)
&& u.UnitType.Contains(this.UnitType)
&& u.ClientContact.Contains(this.ClientContact)
select u;
但它只有在所有参数都匹配时才返回值。在 SQL Server 中,我使用 like '%%' 来解决
这个问题。如何在 LINQ 中编写它。
编辑:我SQLMethods.Like
在 SO 的一个解决方案中找到了方法,但我无法在我的项目中使用这种方法。我需要为此添加任何参考吗?