LinqDatasource字段上的子句通过外键属于链接表

时间:2011-08-25 09:20:25

标签: asp.net linq linqdatasource

我有两个与外键链接的表,电子邮件和所有者。电子邮件有一个Column Owner_FID,它是所有者的Owner_ID的FK。

我有一个用于电子邮件表的Linq数据源,我想使用Where过滤它 在Owner.Owner_Name

Linq Datasource:

<asp:LinqDataSource ID="LinqEmails" runat="server" ContextTypeName="ACGlobalEmail.GlobalEmailDLDataContext" EntityTypeName="" TableName="Emails" EnableUpdate="False"   Where="Name != null"
Select="new(Emall_Address,
Owner_FID,Contact_Name,Language,Owner.Owner_Name as Name)">
</asp:LinqDataSource>

我在此处遵循MSDN指南 http://msdn.microsoft.com/en-us/library/bb470363.aspx ..看起来很简单,但我得到了这个

'/'应用程序中的服务器错误。

“电子邮件”类型中不存在任何属性或字段“名称” 描述:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.Web.Query.Dynamic.ParseException:“电子邮件”类型中不存在属性或字段“名称”

1 个答案:

答案 0 :(得分:1)

As完成的别名在Where完成后发生 。尝试将Where更改为Owner.Owner_Name != null(我没试过),或者您可能不需要Owner.