コード例 #1
0
        public User Save(User user)
        {
            if (user == null)
            {
                throw new ArgumentNullException("user", "Invalid user data");
            }

            var mongoDb = MongoDb.OpenConnection();

            var data       = new UserMongoMap().GetMongoMap(user);
            var collection = mongoDb.GetCollection <BsonDocument>(CollectionsEnum.users.ToString());

            if (data.IsNew)
            {
                collection.InsertOne(data.ToBsonDocument());
                return(data.GetUserModel());
            }

            var builder = Builders <BsonDocument> .Filter;
            var filter  = builder.Eq("_id", new BsonObjectId(data.Id));

            collection.FindOneAndReplace(filter, data.ToBsonDocument());

            return(data.GetUserModel());
        }
コード例 #2
0
        public User Save(User user)
        {
            if (user == null)
                throw new ArgumentNullException("user", "Invalid user data");

            var mongoDb = MongoDb.OpenConnection();

            var data = new UserMongoMap().GetMongoMap(user);
            var collection = mongoDb.GetCollection<BsonDocument>(CollectionsEnum.users.ToString());

            if (data.IsNew)
            {
                collection.InsertOne(data.ToBsonDocument());
                return data.GetUserModel();
            }

            var builder = Builders<BsonDocument>.Filter;
            var filter = builder.Eq("_id", new BsonObjectId(data.Id));
            collection.FindOneAndReplace(filter, data.ToBsonDocument());
            
            return data.GetUserModel();
        }