示例#1
0
 public Task<Room> AddRoomAsync(Room room)
 {
     return _factory.ExecuteAsync<IRoomRepository, Room>(async roomRepository =>
     {
         var existing = (await roomRepository.AnyAsync(d => d.Name == room.Name).ConfigureAwait(false));
         if (existing)
         {
             throw new RoomAlreadyExistsException("Room '" + room.Name + "' already exists.");
         }
         room.Id = await roomRepository.InsertAsync(room.ToEntity()).ConfigureAwait(false);
         return room;
     });
 }
示例#2
0
 public Task RemoveRoomAsync(Room room)
 {
     room.IsAlive = false;
     return _factory.ExecuteAsync<IRoomRepository>(roomRepository => 
                 roomRepository.UpdateAsync(room.ToEntity()));
 }