NoRM - 带参数的FindAndModify

时间:2011-02-24 17:49:00

标签: c# mongodb norm

是否可以在执行FindAndModify时指定字段,因此只返回一个字段?

此外,是否可以进行upsert,以创建不存在的对象。

按照: http://www.mongodb.org/display/DOCS/findAndModify+Command

我看不到添加其他参数的任何方法

修改 似乎有些混乱 - 我正在使用NoRM(C#) https://github.com/atheken/NoRM/

2 个答案:

答案 0 :(得分:1)

我担心NoRM实际上不可能。您可以分叉项目并将重载的FindAndModify方法添加到文件NoRM / Collections / MongoCollectionGeneric.cs以支持此行为。

我认为你可能需要在传递给findOne的匿名对象中添加一个字段fields

var returnValue = cmdColl.FindOne(new
{
  findandmodify = this._collectionName,
  query = query,
  update = update,
  sort = sort,
  fields = fields
}).Value;

也许拉动请求:)

答案 1 :(得分:-2)

使用字段说明符。例如

db.foo.findAndModify({query:{_id:"myid"},
update:{$set:{priority:78}},new:true,fields:{_id:1,priority:1}})