mongodb批量更新,如果不存在則自動插入


驅動名稱:
MongoDB.Driver

重要特性:


        public async Task BatchSave<T>(string collectionName, List<T> entities) where T : BsonDocument
        {
            var collection = _database.GetCollection<T>(collectionName);

            var models = new List<WriteModel<T>>();

            foreach (var item in entities)
            {
                if (!item.Contains("_id"))
                {
                    continue;
                }

                var filter = Builders<T>.Filter.Eq("_id", item.GetValue("_id"));
                models.Add(new ReplaceOneModel<T>(filter, item) { IsUpsert = true });

            }

            await collection.BulkWriteAsync(models, new BulkWriteOptions { IsOrdered = false });
        }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM