我有下一个类结构:
public class Order
{
public User User { get; set; }
public string Name { get; set; }
}
public class Authentication
{
public string Email { get; set; }
}
public class User
{
public string Name { get; set; }
public List<Authentication> Auths { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试在运行时构建一个表达式,以按 User.Name、Order.Name 或 User.Auths.Email 搜索实体
我试图组合三个表达式:
Expression<Func<Order, bool>> usernameExpression = order => order.Name.Contains(searchValue);
Expression<Func<Order, bool>> nameExpression = order => order.User.Name.Contains(searchValue);
Expression<Func<Order, bool>> emailExpression = order => order.User.Auths.Any(auth => auth.Email.Contains(searchValue)); …Run Code Online (Sandbox Code Playgroud)