Я мог бы воспользоваться помощью и советом, как мне создать свою модель данных, которую я собираюсь использовать в своем проекте.
Это проект, в котором я собираюсь создать гостиничное приложение, в котором вы сможете забронировать номер.
Я хочу 3 класса моделей:
- BookingModel (содержит все созданные бронирования)
- RoomModel (содержит все комнаты)
- PersonDetailsModel (лицо, заказавшее бронирование)
Я немного не уверен, какой должна быть моя модель данных... я сделал эти термины, о которых думал.
- В бронировании может быть от 1 до нескольких номеров.
- Номер можно бронировать много раз, но в разные дни.
- Бронирование может быть забронировано одним человеком.
Я предполагаю, что у нас есть отношение многие ко многим между бронированием и номером? И много к 1 между бронированием и человеком?
Код (Модели):
public class Booking
{
public int BookingID{ get; set; }
public string BookingNumber{ get; set; }
public DateTime CheckInDate { get; set; }
public DateTime CheckOutDate { get; set; }
public int PersonDetailsID { get; set; }
public virtual PersonsDetails PersonsDetails { get; set; }
public virtual ICollection<Room> Rooms { get; set; }
}
public class PersonDetails
{
public int PersonDetailsID{ get; set; }
public string FirstName{ get; set; }
public string LastName{ get; set; }
}
public class Room
{
public int RoomID{ get; set; }
public string RoomNumber{ get; set; }
public virtual ICollection<Booking> Bookings{ get; set; }
}
Вот так сейчас выглядят мои модели. Не уверен, должен ли Booking иметь внешний ключ для PersonDetails или наоборот (persondetails должен иметь bookingID в качестве внешнего ключа)
Какие предложения я пропустил?