c# - 我可以使用 AsQueryable 来提高此搜索的性能吗?
问题描述
我有以下在 AD 中搜索用户的方法:
private void SearchUsers(string firstName, string lastName)
{
using (var context = new PrincipalContext(ContextType.Domain, request.DomainName))
{
var up = new UserPrincipal(context);
var ps = new PrincipalSearcher(up);
var userSearchResults = ps.FindAll().ToList();
if (!string.IsNullOrEmpty(firstName))
userSearchResults = userSearchResults.Where(
x => x.GivenName?.ToUpper() == firstName.ToUpper()).ToList();
if (!string.IsNullOrEmpty(lastName))
userSearchResults = userSearchResults.Where(
x => x.Surname?.ToUpper() == lastName.ToUpper()).ToList();
}
}
与在此方法中进行搜索的方式相比,是否有更有效的搜索方式?我可以在这里使用 AsQueryable 吗?
解决方案
推荐阅读
- c# - 使用参考令牌的 ASPNETCore SignalR 身份验证
- javascript - 错误类型错误:角度 5 中的“_co.navigate 不是函数”
- android-studio - android studio:https自签名证书不受信任
- sql - 引发异常以禁止更新 PostgreSQL 中的列
- performance - Jmeter多用户执行
- java - 超时后重新发送消息
- c++ - 重构模板类,使用它的嵌套类作为另一个类的模板参数
- android - 如何在卸载(Android)时强制删除应用程序数据?
- javascript - 实现订阅 angular 的 observable 的最佳位置
- google-bigquery - 谷歌云大查询中的错误?