【问题标题】:i want to take an id as a Session but it give's me Parser Error in asp.net我想把一个 id 作为一个会话,但它给了我 asp.net 中的解析器错误
【发布时间】:2019-07-06 14:42:56
【问题描述】:

我正在尝试通过查询字符串或 Session["p"] 从 asp.net 中的超链接发送一个 id,但它一直给我这个错误“解析器错误”请帮助我!

我尝试将其解析为 int,但它也不起作用

//这是html

   <asp:Repeater runat="server" ID="reptater" OnItemCommand="reptater_ItemCommand">
                    <ItemTemplate>
                <section>
                    <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='~/commander.aspx?id='+<%#Eval("id_Prod") %>>
                   <div class="gallery">
                       <h1> <%#Eval("nom_Prod") %></h1>

                       <asp:Image ID="image1"  runat="server"  width="180" height="120" ImageUrl='<%#Eval("img") %>' />

            &nbsp;&nbsp;<div class="desc"> <%#Eval("Détails") %> <br> Prix:  <%#Eval("prix") %> DH  <%#Convert.ToInt32(Eval("id_Prod")) %></div>
        </div>
                        </asp:HyperLink>
                </section>


            </ItemTemplate>


        </asp:Repeater>

//这是我的代码

protected void Page_Load(object sender, EventArgs e)
        {

            Connexion.cnx.Open();

            Connexion.dt1.Clear();
            Label2.Text = Request.QueryString["search"].ToString();
            int nbr;
            Connexion.cmd.CommandText = "select count(*) from  Produit where nom_Prod='" + Request.QueryString["search"].ToString() + "'";
            Connexion.cmd.Connection = Connexion.cnx;
            nbr = (int)Connexion.cmd.ExecuteScalar();
            if (nbr >= 1)
            {

                Connexion.cmd.CommandText = "select id_Prod,nom_Prod,Détails,Prix,#emailVendeur,img from Produit where nom_Prod='" + Request.QueryString["search"].ToString() + "'";
               Connexion.cmd.Connection = Connexion.cnx;
               Connexion.dr = Connexion.cmd.ExecuteReader();
                Connexion.dt1.Load(Connexion.dr);
                reptater.DataSource = Connexion.dt1; ;
                reptater.DataBind();
                Connexion.dr.Close();
            }
            else { Label3.Visible = true; }



        }

我希望当我点击一个 div 时,它会将我带到另一个页面,其中 id 作为会话或我更喜欢作为会话的查询字符串

【问题讨论】:

    标签: c# html asp.net query-string


    【解决方案1】:

    而不是使用

    Request.QueryString["search"]
    

    你应该使用

    Request.QueryString["id"]
    

    因为您在查询字符串中发送“id”

    NavigateUrl='~/commander.aspx?id='+

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多