我目前的LINQ-to-SQL项目中有一个相当标准的继承情况。我有一个名为'Party'的基类和名为'Individual'和'Organization'的类,它继承自它。
我想要达到的目标似乎(也可能是)相当简单。我想返回按公司名称排序的“组织”列表。问题是公司名称('CoName')字段是'Organization'类的成员,而不是'Party'类。
我当前未分类的查询是......
oClients = (From P In ERM.Parties Where TypeOf (P) Is Organisation)
我想做的是......
oClients = (From P In ERM.Parties Where TypeOf (P) Is Organisation Order By CoName)
...但当然这不起作用,因为'CoName'属性不是'Party'类的成员。
非常感谢任何帮助!
答案 0 :(得分:4)
使用OfType<>()
运算符:
ERM.Parties.OfType<Organisation>().OrderBy(p => p.CoName)