替换来自sql reader的

时间:2016-05-14 13:36:20

标签: c# asp.net webforms

这是我在db

中更新行时的操作
TextBox_Thing.Text.Replace("\n", "<br/>")

当我从数据库中检索东西时它工作正常,因为我可以看到所有这些断点。当我想编辑插入的文本时出现问题,因为它会自动将<br/>添加到我的TextBox中,如果我在该多行文本框中有<br/>时点击更新,则会出现错误。

这是我将文本从数据库检索到同一文本框的方法

con.Open();
SqlDataReader reader = cmd.ExecuteReader();

if (reader.Read())
{
    TextBox_Thing.Text = reader["user_thing"].ToString();

}

怎么做._。?我可以以某种方式将其替换回\n,同时从阅读器中检索到文本框吗?

1 个答案:

答案 0 :(得分:1)

var text  = reader["user_thing"].ToString(); 
text = text.Replace("<br/>", "\n")
TextBox_Thing.Text = text;

您可以再次使用“替换”来反转以前的文本替换。 Replace方法可用于任何字符串,无论它来自何处以及用于何种字符串。

但是,您应该重新考虑一般方法。

当您只是替换换行符然后在某些时候想要将文本输出为html时,使用属于HTML语法的字符的文本的其他部分会发生什么?

例如,如果用户输入文本

  

A<B means that B>A

如果您将其输出为HTML,则只能看到

  

AA

始终对用户输入的文本或来自可能包含html语法的其他来源使用HttpUtility.HtmlEncode