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);