如何从 EF 6.1.3 中的特定鉴别器检索行?

How to retrieve rows from a specific discriminator in EF 6.1.3?

我在我的代码优先模型中使用 TPH 方法,基础 class 是类型 WItem,派生类型是 BItem,我想检索所有 WItems只有行,所以我做了这个

return View(db.WItems.OfType<WItem>().ToList());

但我仍然得到所有行 WHERE [Extent1].[Discriminator] IN (N'BItem',N'WItem')}?

一位来自 Quora 的小伙伴这样建议:​​

db.WItems.Where(s => !(s is BItem));

如我所愿。