ASP.NET保存特殊字符到数据库

时间:2008-11-11 04:22:16

标签: c# asp.net ado.net special-characters

请告诉我如何将带有特殊字符的字符串保存到DB。特殊字符可能会受到单quotes/double quotes等。我正在使用带有C#的ASP.NET

6 个答案:

答案 0 :(得分:1)

使用参数化查询。

http://aspnet101.com/aspnet101/tutorials.aspx?id=1

渲染到客户端时,还应使用Server.HtmlEncode()将HTML中具有特殊含义的字符转换为数字字符引用。

答案 1 :(得分:0)

很难回答没有太多细节。但通常最好的选择是参数化查询。

答案 2 :(得分:0)

好的。我一直保存在DB中。我需要将它显示回文本框。然后页面坏了。例如:我已将学生姓名保存为Ani's,当我在ashis中显示时

如何摆脱这个问题?

答案 3 :(得分:0)

你在写出来时是否编码了这个值? (Server.HtmlEncode(值))

答案 4 :(得分:0)

Using (SqlConnection conn = new SqlConnection(connstr))
{
    Using (SqlCommand command = new SqlCommand("INSERT INTO FOO (col) VALUES (@arg)"))
    {
        command.Connection = conn;
        command.Parameters.AddWithValue("@arg",SpecialCharsString);
        command.ExecuteNonQuery();
    }
}

读取它不应该破坏你的输出,如果是,它不是数据库代码。

答案 5 :(得分:0)

(Server.HtmlEncode(value))工作了!