У меня есть базовый класс модели
public class BaseModel
{
[Not Mapped]
public string ExternalId;
}
Базовый класс модели наследуется двумя дочерними классами
public class ChildA : BaseModel
{
public string ExternalId;
}
public class ChildB : BaseModel
{
public string Name;
}
Все дочерние классы наследуются от BaseModel. Я объявил ExternalId в некоторых дочерних классах, чтобы я мог использовать его в своем абстрактном классе для linq. Так как эти модели сначала используются в модели EF, и именно поэтому в BaseModel есть атрибут NotMapped, поэтому EF не создает этот столбец.
и это абстрактный класс
public abstract class Test<T> : ITest<T> where T : BaseModel, new()
{
protected virtual IEnumerable<T> TestMethod(IEnumerable<T> listModels)
{
var items = listModels.Where<T>(i => i.ExternalId != "ABC").ToList();
}
}
Как я могу фильтровать на основе по внешнему идентификатору ребенка A