/// <summary>
        /// 更新数据
        /// </summary>
        /// <param name="schemaName">集合名称</param>
        /// <param name="id">Id</param>
        /// <param name="document">更新的文档</param>
        /// <returns></returns>
        public IEnumerable <BsonDocument> Update(string schemaName, string id, BsonDocument document)
        {
            var collection    = database.GetCollection <BsonDocument>(schemaName);
            var updateOptions = new UpdateOptions()
            {
                IsUpsert = true
            };
            var findFilter = Builders <BsonDocument> .Filter.Eq("_id", new ObjectId(id));

            var updateDefines = Builders <BsonDocument> .Update.Combine(document.BuildUpdateDefine(null));

            collection.UpdateOne(findFilter, updateDefines, updateOptions);
            return(GetById(schemaName, id));
        }