Проектирование репозитория для агрегатного корня с использованием Dapper и SQLiteC#

Место общения программистов C#
Anonymous
Проектирование репозитория для агрегатного корня с использованием Dapper и SQLite

Сообщение Anonymous »

В настоящее время я проектирую репозиторий для моих бронирований.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

Вернуться в «C#»