我创建了这个方法:
public List SearchUsers(Users user)
{
List lstUser;
using (var ctx = new MyEntities())
{
result = ctx.User
.Where(u=>u.Name.Contains(user.Name) && u=>u.ID==user.ID)
.OrderByDescending(u => u.ID)
.ToList();
return lstUser;
}
}
当我调用它时,user.name
,user.ID
参数应该有值,但有时候我想要为空。 ID
为int
,name
为string(30)
。我从文本框中读到它们。
如何创建和调用此方法?
答案 0 :(得分:2)
这样的事情可能会起到作用: 在调用方法时填充userName和userId,或者将一个或两个null保留为适合禁用该部分搜索。
public List<User> SearchUsers(string userName, int? userId)
{
using (var ctx = new MyEntities())
{
IQueryable<User> query = ctx.User;
if (userName != null)
query = query.Where(u=>u.Name.Contains(userName));
if (userId != null)
query = query.Where(u=>u.ID==userId.Value);
var users = query
.OrderByDescending(u => u.ID)
.ToList();
return users;
}
}