Mongo批量更新数据不同字段,不同条件

                var models = new List<WriteModel<AppTaskEntity>>();
                foreach (var item in list)
                {
                    var model = new UpdateOneModel<AppTaskEntity>(Builders<AppTaskEntity>.Filter.Eq(x => x.RecordId, item.Key),
                //这里如果是插入数据可以使用Icnf方法,使用set也没有问题,mongo特性可以使用set更新一条不存在的数据,就会变成插入一条新的数据 Builders
<AppTaskEntity>.Update.Combine( Builders<AppTaskEntity>.Update.Set(x => x.Fields[field], item.Value), Builders<AppTaskEntity>.Update.Set(x => x.LastModifiedTime, DateTime.Now.ToUnixTimeSeconds()), Builders<AppTaskEntity>.Update.Set(x => x.LastModifiedUId, _session.UserId) ) ); models.Add(model); } //批量更新不同数据 await this.GetCollection().BulkWriteAsync(models);

 

posted @ 2022-07-04 12:53  咳咳Pro  阅读(423)  评论(0)    收藏  举报