我正在从Gridview读取并将结果写入转发器,其中该数据通过LinkButton的单击事件处理,最后写入SQL表。由于某种原因,文本保存为HTML代码而不是渲染文本。
Té st with sü mbols
这将是Gridview行显示时保存的内容:
Téstwithsümbols
这必须是因为我的测试证明了Gridview的读数,我手动添加一行(NameX)然后显示在转发器中。如果我单击该条目,写入SQL表的数据就是渲染文本。
protected void FillRepeater()
{
DataTable dt = new DataTable();
dt.Columns.Add("Name", typeof(string));
foreach (GridViewRow row in GridView4_Users.Rows)
{
if(row.Cells[3].Text != "0")
{
string Name = row.Cells[0].Text;
dt.Rows.Add(Name);
}
}
string NameX = "Tést with sümbols";
dt.Rows.Add(NameX);
RepeaterUsers.DataSource = dt;
RepeaterUsers.DataBind();
}
答案 0 :(得分:0)
string Name = HttpUtility.HtmlDecode(row.Cells[0].Text);
强制将渲染文本正确保存到字符串Name,从而强制保存到数据库。
此解决方案已由@ user685590发布为评论,后来作为过度审核的一部分被删除(对于那些轻微的批评感到抱歉)