在使用mongodb的samus驱动时,遇到的Lamda表达式问题
samus-mongodb-csharp在使用mongodb的samus驱动时,遇到一个很诡异的语法问题,如:var db = mongo.GetDatabase("TestDb");var collection = db.GetCollection();collection.Delete(p => p.name == "One");//可以正确删除
Expression> expression = p => p.name == "Two";collection.Delete(expression);//这个删除就不行了
这个现象查询也是一样的,都不行,哪位高人帮忙看一下?
4回答
-
HUWWW
collection.Delete(p => p.name == "One");
这个签名是Func 是一个委托。
而
Expression expression 是表达式树。
expression.Compile()是委托。
感觉这样多此一举啊。
-
暮色呼如
Expression expression = p => p.name == "Two";
换成
Func expression = p => p.name == "Two";
-
千万里不及你
这个试过也不行的。
-
慕的地8271018
非常感谢回复,不过园豆好像只能给一个人的,谢谢。