QueryString用于检索数据库信息

本文关键字:信息 数据库 检索 用于 QueryString | 更新日期: 2023-09-27 18:02:13

我正在做一个项目,我有一个用于主机游戏的游戏库。我用的是ASP。. NET与Visual Studio。

现在我有一个数据库,其中包含games, consoles, categories(类型),categories_games(包含gameidcategory id以指定游戏类型)和consoles_games(相同的事情,但用于主机)的表。

我正在使用DataList显示游戏(名称和图像),如下所示:

<asp:DataList ID="DataList1" runat="server" BackColor="White"
   BorderColor="White" BorderStyle="None" BorderWidth="0px"
   CellPadding="10" CellSpacing="2" Font-Names="Verdana"
   Font-Size="Small" GridLines="Both" RepeatColumns="5"
   RepeatDirection="Horizontal" Width="850px">
      <FooterStyle BackColor="White" ForeColor="#8C4510" />
      <HeaderStyle BackColor="White" Font-Bold="true" Font-Size="Large"
         ForeColor="White" HorizontalAlign="Center"
         VerticalAlign="Middle" />
            <ItemStyle BackColor="White" ForeColor="Black"
               BorderWidth="0px" />
  <ItemTemplate>
    <asp:Image ID="imgGame" runat="server" Width="128px"
    Height="159px" ImageUrl='<%# Bind("uimg", "{0}") %>' />
    <br />
    <asp:Label ID="lblTitle" runat="server"
    Text='<%# Bind("uname") %>'></asp:Label>
    <br />
    <br />
  </ItemTemplate>
</asp:DataList>

背后的代码:

protected void BindData()
{
    DataSet ds = new DataSet();
    con.Open();
    SqlCommand cmd = new SqlCommand(cmdstr, con);
    SqlDataAdapter adp = new SqlDataAdapter(cmd);
    adp.Fill(ds);
    DataList1.DataSource = ds.Tables[0];
    DataList1.DataBind();
}
例如,获取所有PS4游戏的SQL语句如下:

SELECT 
    games.uname, games.uimg 
FROM 
    games, consoles, consoles_games 
WHERE 
    consoles.consoleid = consoles_games.consoleid 
    AND games.uid = consoles_games.uid 
    AND consoles.consoleid = 2 
ORDER BY 
    games.uname

然而,我想使用一个查询字符串来显示游戏,所以我结束了这样的东西:

mywebsite.com/PS4.aspx?consoleid=2

如果有人知道我该如何做到这一点,并且仍然以我现在的方式在数据列表中显示游戏,那就太好了。我一直在寻找任何好的教程,但我似乎找不到任何对我的情况有帮助的东西。

QueryString用于检索数据库信息

首先,当用户导航到ps4游戏视图时(他在链接之前点击了某个地方),你必须创建querystring。然后在显示ps4游戏列表的导航页面上,你应该捕获该查询字符串并根据传递的id或其他内容进行搜索。

看一下:如何在c#中为URL构建查询字符串?

查看如何为url构建查询字符串。