我使用 discriminator 列将几个类映射为subclasses
到表中。但 discriminator 列未映射到任何字段(即使在基类中)。我想创建一个Query(用QueryOver
语法),按子类的类型进行过滤
E.g。表:
Orders (Id,OrderType,Amount,Qty...)
// OrderType is the discriminator column
映射类:
DeliveryOrder (Id,Amount,Qty...)
WorkOrder (Id,Qty,...)
SalesOrder (Id,Amount,...)
需要类似
的查询Query.Where(()=> _orderAlias is DeliveryOrder)
答案 0 :(得分:2)
cool answer Andrew Whitaker我真的记得这个问题:
它显示如下语法:
q = q.Where(b => b.GetType() == typeof(DeliveryOrder));