В настоящее время я проектирую репозиторий для моих бронирований.public class Reservation
{
public int Id { get; set; }
public int UserId { get; set; } //FK
public bool IsActive { get; set; }
public List Days { get; set; }
public List Seats { get; set; }
public List Overrides { get; set; }
}
public class ReservationDay
{
public int Id { get; set; }
public int ReservationId { get; set; } //FK
public int DayOfWeek { get; set; }
}
public class ReservationSeat
{
public int Id { get; set; }
public int ReservationId { get; set; } //FK
public string Label { get; set; }
public int Priority { get; set; }
}
public class ReservationOverride
{
public int Id { get; set; }
public int ReservationId { get; set; } //FK
public DateTime Date { get; set; }
public OverrideAction Action { get; set; }
}
< /code>
Я сделал метод Getbyuserid, используя Dapper's QueryMultipLeasync. Удаление осуществляется путем удаления только записи о бронировании, а детские записи удаляются с помощью «On Delete Cascade». Есть только 1 бронирование на одного пользователя. Но пользователь может добавлять, удалять и обновлять дни, места и переопределения даты. И когда изменения сохраняются, я получаю целое обновленное бронирование. Должен ли я полностью переосмыслить/перепроектировать какую -то часть всего этого?
Я открыт для предложений и вопросов. Основываясь на этом, я бы выполнил обновление/удаление/вставка. Но кажется, что это немного взломанное и вне места иметь всю эту логику и дополнительное чтение в методе репозитория.
Подробнее здесь: https://stackoverflow.com/questions/797 ... and-sqlite
Проектирование репозитория для агрегатного корня с использованием Dapper и SQLite ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение