【发布时间】:2009-03-27 11:35:18
【问题描述】:
我有一个使用 Linq2SQL 继承的设置。为了使查询更容易,我也在 DataContext 中公开了派生类型,如下所示:
public IQueryable<Derived> Derivations
{
get { return Bases.OfType<Derived>(); } // filter list on type
}
调用它非常有效,我可以看到 SQL 正在正确生成。支持类型是 DataQuery
当我将此 IEnumerable 分配给数据源(控件或 BindingSource)时,问题就出现了。
据我所知,已查询 DataQuery 对象以获取 IListSource。它很乐意提供这个。然后它继续创建一个 BindingList,由于提供的 2 个参数(IEnumerable
简单的解决方法是在分配给数据源之前在 IQueryable
有什么建议可以在不“丢失” IQueryable 的情况下处理这个问题?
谢谢
雷比
更新:
该错误现已报告给 MS。更多详情here。谢谢马克!
【问题讨论】:
标签: c# linq-to-sql inheritance datasource oftype