如何使用查询字符串从sql返回数据

时间:2016-08-03 05:55:20

标签: c# asp.net

我有一个电影网站。如果您点击一部电影,它将转到另一个页面,在该页面中显示该电影中的所有细节。只需将其视为电影的图像,如果单击它,浏览器会使用查询字符串将您带到另一个页面。现在,我已经完成了所有这些,但问题是我无法从数据库中显示所请求的信息。我需要帮助,看看我做错了什么。这是具有不同电影图像的页面的html / asp.net代码

<asp:Repeater ID="repMovies" runat="server" OnItemDataBound="repMovies_ItemDataBound" >
        <ItemTemplate>
                <a href="MovieDetail.aspx?MovieTitle=<%#Eval("ID") %>">
                     <main class="col-md-3 movie" style="background:#eee;margin-top:10px;padding:10px;border-radius:10px;border:solid 2px #333;height:280px;">
                    <div class="col-md-4"></div>
                 <div class="col-md-4">
                    <img src="Images/<%#Eval ("Poster")  %>"  class=" img-responsive img-rounded" style="height:100px;width:100%"/>
                </div>
                     <div class="col-md-4"></div>

                <div class="col-md-12">
                    <div class="row">
                        <h6><strong>Title:</strong><%#Eval("Title") %></h6>
                    </div>
                     <div class="row">
                       <h6><strong>Year :</strong><%#Eval("mYear") %></h6>
                    </div>
                     <div class="row">
                        <h6 style="font-size:9px;"><strong style="font-size:11px;">Starring:</strong><%#Eval("Starring") %></h6>
                    </div>
                     <div class="row">
                        <div class="menu">
                            <h6 style="font-size:11px;"><strong>Summery:</strong></h6>
                          <p style="font-size:9px;"><%#Eval("Summary") %>
                        </div>
                    </div>
                </div>
            </main>
                </a>
        </ItemTemplate>
    </asp:Repeater>

这里是电影细节页面背后的代码

if (!IsPostBack)
    {
        string movieId = Request.QueryString["ID"];
        repMovie.DataSource = db.Movies.Where(m => m.ID == movieId).ToList();
        repMovie.DataBind();
    }

1 个答案:

答案 0 :(得分:0)

您使用的是错误的查询字符串参数名称。如下面的代码段所示,查询字符串参数的名称为MovieTitle。要获取电影ID,您尝试在ID

后面的代码中将其名称string movieId = Request.QueryString["ID"];提取到它
<a href="MovieDetail.aspx?MovieTitle=<%#Eval("ID") %>">

在后面的代码中获取查询字符串,如下所示,你应该很好:

string movieId = Request.QueryString["MovieTitle"];