我有一个方法,它接受Expression类型的参数,在我的方法中,我想获取这个表达式的值,但是不知道如何做到。
private User GetUser(Expression<Func<User, bool>> query)
{
User user = Context.User.Where(query).FirstOrDefault();
return user;
}
我正在使用不同的参数调用此方法,例如
GetUser(u => u.Username == username);
GetUser(u=> u.Email == email);
我希望将GetUser方法改为使用存储过程,但需要找到查询参数中的内容。
我想检查查询是否为u.Username == username 我将调用GetUserByUsername存储过程。 如果查询是u.Email == email 我将调用GetuserByEmail存储过程。