簡體   English   中英

如何在GridView Asp.Net中顯示數據庫中的編碼值?

[英]How to display encoded values from database in GridView Asp.Net?

我有一個gridview,它顯示數據庫表中的所有數據。 但是,由於我之前已經對數據庫值進行了編碼,因此GridView中顯示的值也已編碼。 我該怎么做才能將值解碼以在GridView中顯示它們?

這是我用於將數據庫綁定到Gridview的代碼:

private void BindGrid()
{
    string constr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
    using (SqlConnection con = new SqlConnection(constr))
    {
        using (SqlCommand cmd = new SqlCommand("select bookingName from addCart"))
        {
            using (SqlDataAdapter sda = new SqlDataAdapter())
            {
                cmd.Connection = con;
                sda.SelectCommand = cmd;
                using (DataTable dt = new DataTable())
                {
                    sda.Fill(dt);
                    GridView1.DataSource = dt;
                    GridView1.DataBind();
                }
            }
        }
    }
}


protected void Page_Load(object sender, EventArgs e)
{
    if (!this.IsPostBack)
    {
        this.BindGrid();
    }
}

我可以在上面代碼的哪些部分添加HttpUtility.HtmlDecode方法以在GridView中顯示解碼的數據庫?

如果您使用TemplateField ,則可以按以下方式對其進行解碼:

<asp:GridView ID="GridView1" runat="server">
    <Columns>

        <asp:TemplateField HeaderText="Decoded HTML">
            <ItemTemplate>

                <%# HttpUtility.HtmlDecode(Eval("column").ToString()) %>

            </ItemTemplate>
        </asp:TemplateField>

    </Columns>
</asp:GridView>

感謝@VDWWD,我能夠以解碼形式顯示數據庫:

<ItemTemplate>
<asp:Label ID="Label1" runat="server" 
Text='<%# HttpUtility.HtmlDecode(Eval("bookingName").ToString()) %>'>
</asp:Label>        
</ItemTemplate>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM