我如何过滤并找到在搜索字段中键入的确切术语,而不使用.contains ?



我需要在我的ASP中搜索并找到确切的术语。. NET核心应用程序,我现在使用。contains,但它显示所有的术语包含我输入的内容和输出不正确,我只需要找到我在搜索字段中输入的内容,

这是我的DB库代码:

public List<LabResult> Search(string term)
{
return db.LabResults.Where(a => a.PatientNo.ToString().Contains(term)).ToList();
}

例如患者号= 250

我只需要找到属于这个250号病人的数据

不是2250或3250

我需要用什么来代替。contains ?

==应该可以做到这一点:

public List<LabResult> Search(string term)
{
return db.LabResults
.Where(a => a.PatientNo.ToString() == term)
.ToList();
}

注意,如果PatientNo是一个数字,您应该将term转换为数字,而不是在数据库中执行此转换,反之亦然。以下内容(假设PatientNoint):

public List<LabResult> Search(string term)
{
if(int.TryParse(term, out var searchNo))
{ 
return db.LabResults
.Where(a => a.PatientNo.ToString() == term)
.ToList();
}
else
{
// or throw
return new List<LabResult>();
}
}

最新更新