我如何使用ASP linq gridview从一个表中的两个外键读取不同的数据名称

问题描述 投票:0回答:1

我正在使用ASP和SQL Server。

场景:我数据库中的两次外键表是使用的特定表。

问题:当我想显示linq在ASP GridView中在这些外键上输入的不同数据时,它将为不同的值显示相同的数据。

示例:我的第一个表名为“ Table_1”,其中包含两个数据:

id2 = Book,id4 =学生

enter image description here

而且我还有第二个表,名称也为“ foreignKeys”,它也具有这样的数据:

enter image description here

问题:如何使用linq gridview从“ foreignKeys”读取不同的数据名称(书本和学生)?

我的HTML代码:

<asp:GridView ID="gvDeFrm" runat="server" AutoGenerateColumns="False" DataKeyNames="id" DataSourceID="linq">
                <Columns>
                    <asp:BoundField DataField="Name" HeaderText="Book"></asp:BoundField>
                    <asp:BoundField DataField="Name" HeaderText="Student"></asp:BoundField>
                </Columns>
            </asp:GridView>

我的背后代码:

 protected void linq_Selecting(object sender, LinqDataSourceSelectEventArgs e)
    {
        e.Result = (from f in db.foreignkey
                    select new
                    {
                        f.userId,
                        f.Table_1.Name
                    }
                  ).ToList();
    }

谢谢您的关注。

asp.net sql-server linq linq-to-entities
1个回答
0
投票
目前,外键只有一个from子句。

查看上一个问题的解决方案:c# Linq Join same table twice

它非常相似,应该可以为您提供所需的东西。

© www.soinside.com 2019 - 2024. All rights reserved.