У меня есть абстрактный класс, который наследуется двумя классами. Оба класса представляют таблицы в базе данных. У меня возникли проблемы с отображением выражений, хотя в абстрактном классе, и поэтому я получаю исключения, которые не могут быть переведены на SQL. Все вопросы, которые я нашел в Stackoverflow, говорят о столбцах, которые уже работают для меня.
Ниже приведен очень простой код, который показывает, что я имею в виду. Автомобиль и мотоцикл имеют полностью отдельные реализации _isNew Expression.
public abstract class Vehicle {
public abstract boolean IsNew;
}
public partial class Car: Vehicle {
public override boolean IsNew {
get { _isNew.Invoke(this); }
}
}
public partial class Motorcycle: Vehicle {
public override boolean IsNew {
get { _isNew.Invoke(this); }
}
}
Я хотел бы иметь возможность называть либо _isNew expression, либо свойство IsNew на IQueryable, и все же он запускает класс _isNew класса Car в случае, если Vehicle является типом автомобиля. В любом случае, я могу это сделать? Все решения, которые я пробовал, вызвали исключение, которое невозможно передать в SQL.