Я не совсем уверен, как правильно решить эту проблему.
У меня есть класс Appointment
и класс AppointmentSeries
с наследованием от Appointment
.
Моя база данных настроена с использованием кода сначала с помощью TPH.
Теперь, когда я получаю базу данных, я хочу получить все строки с типом Appointment
без AppointmentSeries
.
Я пробовал использовать OfType<Appointment>()
, но он также получил AppointmentSeries
.
Я читал, что мне нужно использовать абстрактные классы, чтобы добиться правильного поведения, но я не хочу реализовывать абстрактный класс, поэтому мне нужно реализовать те же свойства в Appointment
и AppointmentSeries
. Или мне нужно?
Другое решение, которое я нашел, заключалось в добавлении .where(a => !(a is AppointmentSeries))
к каждому запросу. Но это уродливо, и я получаю всю базу данных, а затем исключаю некоторые строки.
Есть ли лучший способ получить только встречи или структурировать мои классы, чтобы я мог использовать OfType<Appointments>()
?
Всего наилучшего
Канере