我正在尝试对使用Table per Type继承的表执行 linq to entity 查询。
我遇到的问题是我无法获取 Inhertied 表上的属性,而只能获取 Base Table 上的属性。
var qry = from i in _DB.BaseTable
where i is catalogueModel.InheritedTable
// Field Doesn't Exist
// && i.InheritedTableField == "Value"
select i;
当我尝试将继承表转换为它的类型时......
var qry = from i in _DB.BaseTable
where i is catalogueModel.InheritedTable
&& (i as catalogueModel.InheritedTable).InheritedTableField == "Value"
select i;
...代码编译,但我得到一个很酷的错误,内容如下
工作表中只允许使用文本指针,不允许使用 text、ntext 或 image 列。查询处理器生成了一个查询计划,该计划需要工作表中的 text、ntext 或 image 列。
我想我的问题是,当使用Table per Type时,您应该如何访问 linq 中继承表的属性到实体?