Ejemplo n.º 1
0
        public async Task RemoveAsync(Auditorium auditorium)
        {
            var filter = Builders <Housing> .Filter.Eq("Id", auditorium.HousingId);

            var housing = await Housings.Find(filter).FirstAsync();

            housing.Auditoriums.Remove(housing.Auditoriums.FirstOrDefault(a => string.Equals(a.Id, auditorium.Id)));

            await Housings.ReplaceOneAsync(h => string.Equals(h.Id, housing.Id), housing);
        }
Ejemplo n.º 2
0
        public async Task <Auditorium> AddAsync(Auditorium auditorium)
        {
            var filter = Builders <Housing> .Filter.Eq("Id", auditorium.HousingId);

            var housing = await Housings.Find(filter).FirstAsync();

            if (housing == null)
            {
                return(null);
            }

            if (housing.Auditoriums == null)
            {
                housing.Auditoriums = new List <Auditorium>();
            }

            auditorium.Id = ObjectId.GenerateNewId().ToString();
            housing.Auditoriums.Add(auditorium);

            await Housings.ReplaceOneAsync(h => string.Equals(h.Id, housing.Id), housing);

            return(auditorium);
        }