Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何使用ASP linq gridview从一个表中的两个外键读取不同的数据名_Asp.net_Sql Server_Linq_Linq To Entities - Fatal编程技术网

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

Asp.net 如何使用ASP linq gridview从一个表中的两个外键读取不同的数据名,asp.net,sql-server,linq,linq-to-entities,Asp.net,Sql Server,Linq,Linq To Entities,我正在使用ASP和SQL Server 场景:数据库中的一个表两次外键是使用的特定表 问题:当我想在ASP GridView中显示linq在这些外键上输入的不同数据时,它会为不同的值显示相同的数据 示例: 我的第一个表名为“table_1”,包含两个数据: id2=书本, id4=学生 我还有第二个名为“foreignKeys”的表,其中包含如下数据: 问题:如何使用linq gridview从“外键”中读取不同的数据名(书籍和学生) 我的Html代码: <asp:GridView I

我正在使用ASP和SQL Server

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

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

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

id2=书本, id4=学生

我还有第二个名为“foreignKeys”的表,其中包含如下数据:

问题:如何使用linq gridview从“外键”中读取不同的数据名(书籍和学生)

我的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>

感谢您刚才的关注。

您只需要两个from子句,而不是一个from子句。为每个对象指定不同的别名,并确保每个对象都有一个where子句,该子句指定连接到where的对象

目前,外键只有一个from子句

请看前一个问题的解决方案:


它非常相似,应该能满足您的需要。

你好,伙计,您能用编程代码进一步解释吗?
 protected void linq_Selecting(object sender, LinqDataSourceSelectEventArgs e)
    {
        e.Result = (from f in db.foreignkey
                    select new
                    {
                        f.userId,
                        f.Table_1.Name
                    }
                  ).ToList();
    }