根据asp.net中其他表的选定字段从表中选择字段
简而言之,我正在编写一个实现用户和组的web应用程序。多个用户有多个组。这就给我留下了三个表:user、group、usergroup 现在我有了一个webform,我想在其中管理组及其成员。对于这一点,我对上述表单有两个GridView。一个用于显示组,另一个用于显示所选组的成员 gridview组有两列:description和buttonfield所在的另一列,显示成员。当用户单击此按钮时,他将在另一个gridview中获得基于所选组的用户列表 然而,我真的不知道该怎么做?你能给我指一下这里的正确方向吗 这是我的密码:根据asp.net中其他表的选定字段从表中选择字段,asp.net,gridview,Asp.net,Gridview,简而言之,我正在编写一个实现用户和组的web应用程序。多个用户有多个组。这就给我留下了三个表:user、group、usergroup 现在我有了一个webform,我想在其中管理组及其成员。对于这一点,我对上述表单有两个GridView。一个用于显示组,另一个用于显示所选组的成员 gridview组有两列:description和buttonfield所在的另一列,显示成员。当用户单击此按钮时,他将在另一个gridview中获得基于所选组的用户列表 然而,我真的不知道该怎么做?你能给我指一下这
<asp:Content ID="content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<h1>Gruppenverwaltung</h1>
<asp:Panel ID="pnlGruppe" ScrollBars="Both" runat="server">
<asp:Button ID="btnNeueGruppe" Text="Neue Gruppe" runat="server" OnClick="btnNeueGruppe_Click" />
<asp:GridView DataKeyNames="GruppenID" OnRowCommand="grdGruppe_RowCommand" ID="grdGruppe" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="Bezeichnung" HeaderText="Bezeichnung" SortExpression="Bezeichnung" />
<asp:ButtonField ButtonType="Button" CommandName="MitgliederAnzeigen" Text="Mitglieder anzeigen" />
<asp:CommandField HeaderText="Archivieren" ButtonType="Button" ShowDeleteButton="true" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT [Bezeichnung], [GruppenID] FROM [Gruppe] WHERE [Archiviert] != 1"
DeleteCommand="UPDATE Gruppe SET [Archiviert] = 1 WHERE [GruppenID] = @GruppenID"></asp:SqlDataSource>
<asp:Button ID="btnZurueck" Text="Zurück" runat="server" OnClick="btnZurueck_Click" />
</asp:Panel>
<asp:Panel Visible="false" ID="pnlMitglieder" ScrollBars="Both" runat="server">
<asp:GridView ID="grdBenutzer" runat="server" AutoGenerateColumns="false">
</asp:GridView>
<asp:Button ID="Button1" Text="Zurück" runat="server" OnClick="Button1_Click" />
</asp:Panel>
受保护的无效grdGruppe_RowCommandobject发送方,GridViewCommandEventArgs e
{
if (e.CommandName == "MitgliederAnzeigen")
{
string rowindex = e.CommandArgument as string;//Get Row Index
string str = GridView1.Rows[Convert.ToInt32(rowindex)].Cells[0].Text;
pnlMitglieder.Visible = true;
pnlGruppe.Visible = false;
}
在str中获得GroupName后,你可以根据这个绑定你的第二个网格视图,希望它能帮助你谢谢你的回答。但是,我选择了groupid,因为实际上两个组可能具有相同的名称。现在我只需要从usergroup表中获取userid,并根据user表中的userid显示名字和姓氏…我已经在上面更新了我的代码抱歉leonidas,我无法理解你在评论中要求的是什么..我认为你需要group id而不是name来定义你的gridview的datakeys字段groupid…..并且您可以通过gridview1.datakey[rowindex].tostring获取此id;希望你需要什么!!!!当我点击Mitglieder Anzegen按钮时,我需要从usergroup表中获取所有用户id,这些用户id具有指向组id的引用字段。然后,根据这些用户id,我需要从user表中获取名字和姓氏。我已经有了groupid,现在我只需要从用户表中获取用户数据来显示…有多少表U有哪些列。。。。。。从USER_表中选择FIRST_NANME,LAST_NAME,其中USER_ID位于SELECT*FROM reference GROUPTABLE中,其中GROUP ID=STRnobody得到任何答案?我只需要sql语句,它允许我从用户表中选择名字和姓氏。但是由于多对多的关系,它通过一张中间的桌子,我不知道这是如何工作的。。。
{
if (e.CommandName == "MitgliederAnzeigen")
{
string rowindex = e.CommandArgument as string;//Get Row Index
string str = GridView1.Rows[Convert.ToInt32(rowindex)].Cells[0].Text;
pnlMitglieder.Visible = true;
pnlGruppe.Visible = false;
}