// public methods
        /// <summary>
        /// Executes the bulk operation using the default write concern from the collection.
        /// </summary>
        /// <returns>A BulkWriteResult.</returns>
        public BulkWriteResult Execute()
        {
            var args = new BulkWriteArgs
            {
                IsOrdered = _isOrdered,
                Requests  = _requests
            };

            return(_collection.BulkWrite(args));
        }
        /// <summary>
        /// Executes the bulk operation.
        /// </summary>
        /// <param name="writeConcern">The write concern for this bulk operation.</param>
        /// <returns>A BulkWriteResult.</returns>
        public BulkWriteResult Execute(WriteConcern writeConcern)
        {
            if (writeConcern == null)
            {
                throw new ArgumentNullException("writeConcern");
            }
            var args = new BulkWriteArgs
            {
                IsOrdered    = _isOrdered,
                WriteConcern = writeConcern,
                Requests     = _requests
            };

            return(_collection.BulkWrite(args));
        }
        private BulkWriteResult ExecuteHelper(WriteConcern writeConcern)
        {
            if (_hasBeenExecuted)
            {
                throw new InvalidOperationException("The bulk write operation has already been executed.");
            }
            _hasBeenExecuted = true;

            var args = new BulkWriteArgs
            {
                IsOrdered    = _isOrdered,
                WriteConcern = writeConcern,
                Requests     = _requests
            };

            return(_collection.BulkWrite(args));
        }
Esempio n. 4
0
 public void ShowOffDirectBulkWriteToSpecifyOtherArguments()
 {
     var args = new BulkWriteArgs
     {
         CheckElementNames = false
     };
     var insert = new InsertRequest(typeof (BsonDocument), new BsonDocument {{"$invalid", 1}});
     try
     {
         _Collection.BulkWrite(args, insert);
     }
     catch (BulkWriteException exception)
     {
         WriteErrors(exception);
         throw;
     }
 }