1
我有HTML格式的记录和属性的许多过滤选项的表。用户可以选择无,一个或多个。我在C#中使用mongoDb数据库和MongoDb驱动程序。我如何才能实现这种过滤?在MongoDB中的乘法过滤
过滤
public class ConsultantFiltersModel
{
public string RecruiterName { get; set; }
public int? RecruiterCode { get; set; }
public bool? WithouRecruiter { get; set; }
public string FutureWorkerName { get; set; }
public string PhoneNumber { get; set; }
}
我通过从客户端该过滤器,一些属性是Nullable
。我只需要通过非空属性筛选记录。
我试着去实现它这样
public Consultant FilterRecords(ConsultantFiltersModel consultantFiltersModel)
{
return consultantsCollection
.AsQueryable()
.Where(recruiterNameFilter =>
string.IsNullOrEmpty(consultantFiltersModel.RecruiterName)
? true
: recruiterNameFilter.Recruiter.Value == consultantFiltersModel.RecruiterName)
.Where(recruiterCodeFilter =>
consultantFiltersModel.RecruiterCode.HasValue
? true
: recruiterCodeFilter.Recruiter.Key == consultantFiltersModel.RecruiterCode)
.Where(phoneNumberFilter =>
string.IsNullOrEmpty(consultantFiltersModel.PhoneNumber)
? true
: phoneNumberFilter.FutureWorker.Phone.Contains(consultantFiltersModel.PhoneNumber))
.Where(futureWorkerNameFilter =>
string.IsNullOrEmpty(consultantFiltersModel.FutureWorkerName)
? true
: futureWorkerNameFilter.FutureWorker.Name.Contains(consultantFiltersModel.FutureWorkerName))
.FirstOrDefault();
}
,但我得到这个例外
型 'System.Reflection.TargetException' 的异常出现在
系统。 Private.CoreLib.ni.dll但未在用户代码中处理
附加信息:非静态方法需要目标。
也许它不支持mongoDbDriver?任何建议?