合并LINQ查询中条目的解密搜索
本文关键字:解密 搜索 LINQ 查询 合并 | 更新日期: 2023-09-27 18:14:51
我有以下搜索查询:
IQueryable<File> files = GetFiles(f => f.Clients.Any(fc => fc.Contacts.Any(c => c.Companies.Any(x => x.Name.Contains(searchText)))));
不幸的是,Companies.Name
的搜索永远不会工作,因为Name
是加密的。
所以我有以下解密的Companies
列表。这是一个存储过程,它使用SQL CLR来解密Name
字段:
List<Company> companies = GetSearchCompanies(searchText).Query.ToList();
这个列表工作正常,它返回一个基于searchText
的公司列表。
我的问题是我是否可以替换原始的files
公司列表,以便能够针对解密的Company
名称进行搜索,以及针对Contacts
, Clients
等的其他搜索。
不如这样写:
var newFiles = from f in files
join c in companies on f.CompanyId equals c.CompanyId
select new File
{
prop1 = f.prop1,
//Assign all your other properties
Company = c
};