Request.QueryString with“&”在其中

时间:2014-02-03 12:01:10

标签: asp.net request.querystring

我正在尝试读取查询字符串,然后使用它来运行查询并显示该变量的结果。非常简单。

不幸的是,有些名称中包含特殊字符,因此在第二页上运行查询时我没有使用全名。

即。 name可能等于“chas& dave”,但是查询字符串只在第二页上给我回“chas”,当我搜索chas时,我得不到任何结果。任何提示,我似乎有两个字符导致问题“&”和“#”。

<asp:hyperlinkcolumn datatextfield="merchant_name"
    datanavigateurlfield="merchant_name"
    datanavigateurlformatstring="writing_out.aspx?id={0}"
    headertext="Merchant Name" />

2 个答案:

答案 0 :(得分:0)

您需要使用HttpUtility,如下所示

System.Web.HttpUtility.UrlEncode(string url)

并使用它。

了解更多详情 http://www.dotnetperls.com/httputility

答案 1 :(得分:0)

<asp:TemplateColumn>
<HeaderTemplate>
    Merchant Name
</HeaderTemplate>
<ItemTemplate>
    <asp:HyperLink ID="mer_name" runat="server" NavigateUrl='<%# "acc_dec.aspx?id=" + HttpUtility.Urlencode(Eval("merchant_name").ToString())  %>' Text='<%# container.dataitem("merchant_name") %>' />
    </ItemTemplate>
</asp:TemplateColumn>