C# Collection.FindAndModify 方法 使用

Collection.FindAndModify 方法使用,

以下方法2个参数的定义:

DirtyStatus:数据的状态,例如定义 1、2、3 代表 增、改、删除三类数据, 0代表已经处理完成的数据

version:代码数据的版本信息,在增删改的操作时 可以使用自增+1的做法,标识数据已经处理的记录。而此次置为0 是结合DirtyStatus来标识数据的状态的。

应用的环境 :数据同步。一旦有数据发生改变,就需要同步,这个时候就通过FindAndModify方法结合这2个参数很容易就实现。

 public bool SetSyncStatus(long Id, int version)
{
        var result = _content.Collection.FindAndModify(new FindAndModifyArgs()
        {
            Query = Query.And(Query.EQ("_id", Id), Query.EQ("Version", version)),
            Update = Update.Set("Version", 0)
            .Set("DirtyStatus", 0),
            VersionReturned = FindAndModifyDocumentVersion.Modified,
            Upsert = false,
        });
        if (result.ModifiedDocument != null)
        {
            return true;
        }
        else
            return false;
}


参考官方文档

http://docs.mongodb.org/manual/reference/method/db.collection.findAndModify/


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值