KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have a LINQ to entities model with Table Per Hierarchy inheritance. I have a query over the base type, and I want to do specific type-dependent logic. For example: IQueryable<BaseType> base = ... // this works fine var result = base.Select(b => b is DerivedType1 ? 1 : 2).ToList(); // this doesn't compile to SQL var result2 = base.Select(b => b is DerivedType1 ? ((DerivedType1)b).DerivedProperty : null).ToList(); Is there any way to do something like this without processing IQueryables of each derived type separately: // I'd rather not do this: var resultA = base.OfType<DerivedType1>().Select(d => d.DerivedProperty); var resultB = base.OfType<DerivedType2>().Select(d => default(int?)); var result = resultA.Concat(resultB).ToList();
Tags (comma-separated)
Save Edits
Cancel