【发布时间】:2019-01-24 00:01:43
【问题描述】:
我有一个简单的搜索功能,可以让我从不同的表格中搜索某些单词。 这很烦人,因为我觉得这里没有看到一个简单的修复方法。有人可以帮忙吗?提前谢谢你。
视图模型
IEnumerable<Owner> Owners {get; set;}
IEnumerable<Car> Cars {get; set;}
搜索方法
public IEnumerable<ViewModel> Search(string search)
{
ViewModel searchVM = new ViewModel();
return searchVM.Owner.Where(o => o.Name.Contains(search)) ||
searchVM.Cars.Where(c => c.Model.Contains(search));
}
错误
Operator '||' cannot be applied to operands of type 'IEnumerable<Owner>' and
'IEnumerable<Car>'
【问题讨论】:
-
你的结构很混乱。
searchVM中的属性填充了什么?它们是否在构造函数中填充了所有可能的数据?您期望该方法返回什么?ViewModel的单个实例,还是ViewModels 的集合? -
那么返回方法应该是一个字符串。例如,我会搜索一个模型,然后我会得到一个与搜索参数相关联的模型集合。
-
构建这个的正确方法是什么?
-
您有具有
Owners和Cars属性的ViewModel类?searchVM的类型是什么?视图期望的模型类型是什么?