【问题标题】:ASP.NET-Saving Special Characters to DatabaseASP.NET-将特殊字符保存到数据库
【发布时间】:2008-11-11 04:22:15
【问题描述】:

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

【问题讨论】:

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


    【解决方案1】:

    使用参数化查询。

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

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        【解决方案3】:

        好的。尽管我保存在数据库中。我需要将其显示回文本框。然后页面被打破。例如: 我已将学生姓名保存为 Ani"s 并且当我显示 gthis

        如何解决这个问题?

        【讨论】:

          【解决方案4】:

          您在写出值时是否对其进行了编码? (Server.HtmlEncode(值))

          【讨论】:

            【解决方案5】:
            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();
                }
            }
            

            读出来根本不应该破坏你的输出,如果是的话,它不是数据库代码在做它。

            【讨论】:

              【解决方案6】:

              (Server.HtmlEncode(value)) 成功了!

              【讨论】:

                猜你喜欢
                • 2016-09-06
                • 2015-04-06
                • 1970-01-01
                • 1970-01-01
                • 2015-04-19
                • 1970-01-01
                • 1970-01-01
                • 2021-06-21
                • 2012-03-24
                相关资源
                最近更新 更多