C# 如何将lambda表达式作为参数插入mongodb';集合。查找';方法?
我不熟悉lambda表达式和委托。我不知道如何使用它们。 因此,我有一个方法,我希望将lambda表达式参数传递给它(x:x.name==“testName”),这样我就可以获取名称为“testName”的Mongodb记录C# 如何将lambda表达式作为参数插入mongodb';集合。查找';方法?,c#,mongodb,lambda,C#,Mongodb,Lambda,我不熟悉lambda表达式和委托。我不知道如何使用它们。 因此,我有一个方法,我希望将lambda表达式参数传递给它(x:x.name==“testName”),这样我就可以获取名称为“testName”的Mongodb记录 public List<BaseModel> get(*lambda expression here*) { List<User> users = Database.userCollectionObjs.Find(*lam
public List<BaseModel> get(*lambda expression here*)
{
List<User> users = Database.userCollectionObjs.Find(*lambda expression here*).ToList();
List<BaseModel> baseModels = new List<BaseModel>();
foreach (User user in users)
{
baseModels.Add(user);
}
return baseModels;
}
public List get(*此处为lambda表达式*)
{
List users=Database.userCollectionObjs.Find(*lambda expression here*).ToList();
List baseModels=新列表();
foreach(用户中的用户)
{
baseModels.Add(用户);
}
返回基模型;
}
显然,如果我这样做:
List<User> users = Database.userCollectionObjs.Find(user => user.name == "testuser").ToList();
List users=Database.userCollectionObjs.Find(user=>user.name==“testuser”).ToList();
它起作用了。
但是,如何将此表达式作为参数传递给get(),然后将其插入到userCollectionObjs.Find扩展方法定义为
public static IFindFluent<TDocument, TDocument> Find<TDocument>(
this IMongoCollection<TDocument> collection,
Expression<Func<TDocument, bool>> filter, //<-- NOTE THE FILTER
FindOptions options = null
)
这样就可以根据需要调用get
函数
List<BaseModel> baseModels = myClass.get(user => user.name == "testuser");
List baseModels=myClass.get(user=>user.name==“testuser”);
List<BaseModel> baseModels = myClass.get(user => user.name == "testuser");