Linq 支持动态字查询集合, 也就是说根据传入的值进行查询。
比如我们有个类Patient, 其中有个字段PatientName, 现在有Patient集合, 想要查询PatientName为“John”的。 代码如下:
class Patient
{
public string PatientName = "";
}
List<Patient> patients = new List<Patient>;
Patient p1 = new Patient();
p1.PatientName = "John";
Patient p2 = new Patient();
p2.PatientName = "Tom";
string sqlCondition = "it.PatientName = @ln";
ObjectParameter sqlValue = new ObjectParameter("ln", "John");
var result = patients.Where(sqlCondition, sqlValue);