如何将html保存到数据库字段

时间:2010-05-26 15:37:56

标签: html sql-server asp.net-mvc

我有一个tiny editor网页,我的用户可以使用此编辑器,我将html保存到我的数据库中。

我在将此html保存到我的数据库时遇到问题。例如,如果名称带有“'”或者是否有其他html字符“<,”,“>”等等,我的代码似乎在插入时爆炸。

是否有关于获取任意html的最佳实践,并将其完全保留到db字段而不必担心任何特定字符。

4 个答案:

答案 0 :(得分:6)

我想知道您是否正在构建完整查询。而是使用参数化查询,这应该消除您的数据问题。

string sqlIns = "INSERT INTO table (name, information, other) VALUES (@name, @information, @other)";

SqlCommand cmdIns = new SqlCommand(sqlIns, db.Connection);
cmdIns.Parameters.Add("@name", info);
cmdIns.Parameters.Add("@information", info1);
cmdIns.Parameters.Add("@other", info2);
cmdIns.ExecuteNonQuery();

答案 1 :(得分:2)

使用SqlParameter插入?如果是,你应该没有问题,检查一下。

答案 2 :(得分:0)

你可以只是HtmlEncode数据。 你将拥有一个HttpContext.Current.Server对象,所以在伪代码中你只需要这样做:

Database.Save(HttpContext.Current.Server.HtmlEncode(myHtml));

并检索它:

myHtml = HttpContext.Current.Server.HtmlDecode(DataBase.Load());

答案 3 :(得分:0)

只是通读这个 - 你的问题实际上是在insert语句中,还是在它遇到你的控制器之前从web服务器出现了问题?注意到您使用asp.net-mvc标记了问题,您可能需要确保使用[ValidateInput(false)]属性修饰了控制器方法。