gpt4 book ai didi

c# - 如何使用 linq-to-entities 构建类似 selectbyexample 的查询?

转载 作者:太空宇宙 更新时间:2023-11-03 11:29:23 25 4
gpt4 key购买 nike

如何使用 linq-to-entities 构建类似 selectbyexample 的查询?

例如:

public class Person
{
public string Name {get; set;}
public int Age {get; set;}
public string City {get; set;}
}

如果我有一个新的 Person(),所有属性的值为空,查询应该返回 Person 表的所有记录。

但是如果我传递一个属性为 Age = 25 的对象,查询应该返回所有 age = 25 的记录;

我想构建一个查询过滤器来接受任何属性,如果忽略它,则为 null。

最佳答案

       var p = new Person {Age = 25};

src.Where(el => p.Age == null ? true : el.Age == p.Age)
.Where(el => p.Name == null ? true : el.Name == p.Name)
.Where(el => p.City == null ? true : el.City == p.City);

在您的 Person 类中,Age 应该可以为空(int?而不是 int)。

关于c# - 如何使用 linq-to-entities 构建类似 selectbyexample 的查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8355339/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com