c# - Asp.net 搜索功能问题
问题描述
我有一个简单的搜索功能,可以让我从不同的表格中搜索某些单词。这很烦人,因为我觉得这里没有看到一个简单的修复方法。有人可以帮忙吗?先感谢您。
视图模型
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>'
解决方案
你的结构很奇怪。但看起来你想要的只是你的一个实例,ViewModel
每个属性都由搜索字符串过滤。
(注意:绝对不清楚您在哪里ViewModel
填充其属性。您是否只是将整个数据存储转储到其构造函数中?这似乎......不太理想。但至于被问到的问题......)
也许是这样的:
public ViewModel Search(string search)
{
ViewModel searchVM = new ViewModel();
searchVM.Owner = searchVM.Owner.Where(o => o.Name.Contains(search));
searchVM.Cars = searchVM.Cars.Where(c => c.Model.Contains(search));
return searchVM;
}
同样,我强烈怀疑您在这里没有完全理解您自己的数据结构。不过,根据我们在问题中的信息,这看起来像是您正在尝试做的事情。
推荐阅读
- javascript - 新复制的数组也会影响旧的原始数组 - JS
- c# - 如何在未在程序中选择的情况下检测按钮按下
- zeromq - 在 ZeroMQ 中,客户端如何检测到身份验证尝试失败?
- r - 用基于指标零和一的值填充 R 中的缺失向量
- python - 如何从频率表创建 pd.Series?
- typescript - 什么是使用 RxJS 在包含数组的 Observable 上迭代(并应用一些逻辑)的优雅解决方案?
- python - postgres DB 中的大 INSERTS 的 asyncpg 问题
- gps - GPS neo-6m 我需要请求数据吗?
- r - 在r中找到列表中每一行的最大值?
- python - 如何在 PySpark 中使用 RDD 聚合()和 groupBy()找到最大值