Где здесь актерский состав? LINQ to Entities поддерживает только приведение типов примитивов Entity Data Model
У меня есть несколько таблиц структуры сущностей, которые я сделал поддерживать интерфейсIHistoricEntity
используя свои родовые классы.IHistoricEntity
имеетActiveTo
Datetime?
имущество.
// Auto generated LINQ to Entities domain service:
[EnableClientAccess()]
public partial class ProductService : LinqToEntitiesDomainService
{
public IQueryable GetANALYSIS_CODES()
{
return this.ObjectContext.ANALYSIS_CODES;
}
...
}
// My Partial class to add interface
public partial class ANALYSIS_CODES : IHistoricEntity
{}
Я пытаюсь реорганизовать этот рабочий код в метод:
List filtered = (from rec in ps.GetANALYSIS_CODES() where rec.ActiveTo == null select rec).ToList()
Вот так:
private List Filter(IQueryable queryable) where T : IHistoricEntity
{
return (from rec in queryable where rec.ActiveTo == null select rec).ToList();
}
// called like this:
List filtered = Filter(ps.GetANALYSIS_CODES());
Это дает это исключение на:ToList
Невозможно привести типANALYSIS_CODES» печатать 'IHistoricEntity», LINQ to Entities поддерживает только приведение типов примитивов Entity Data Model.
Но где я попросил это бросить наIHistoricEntity
? Я только что сказал, чтоT
должен поддержать.IHistoricEntity