using (SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager
.ConnectionStrings["MyPersonal"].ConnectionString))
{
SqlCommand comm = new SqlCommand();
comm.Connection = conn;
conn.Open();
comm.CommandText = "select ArticleContent, dateTime, ArticleID"
+ " from dbo.Article where ArticleTitle = '" + strTitle + "'";
SqlDataReader sqlread = comm.ExecuteReader();
content.InnerHtml = "<table Width='500'><tr><td id='tdTitle'><font size=5>" + strTitle + "</font></td></tr>";
while (sqlread.Read())
{
content.InnerHtml += "<tr><td>发表日期:" + sqlread["dateTime"] + "</td></tr>";
content.InnerHtml += "<tr><td> </td></tr>";
content.InnerHtml += "<tr><td align='left'><span>" + sqlread["ArticleContent"] + "</span></td></tr>"; // 这行在保存的时候是有换号的,输出到HTML就不换行了,怎么解决?
id = int.Parse(sqlread["ArticleID"].ToString());
}
content.InnerHtml += "<tr><td> </td></tr>";
content.InnerHtml += "<tr><td align='right'><a href='EditBlog.aspx?EditID=" + id.ToString() + "'>编辑</a></td></tr>";
content.InnerHtml += "</table></br></br></br>";
}
content.InnerHtml += "<tr><td align='left'><span>" + sqlread["ArticleContent"] + "</span></td></tr>"; // 这行在保存的时候是有换号的,输出到HTML就不换行了,怎么解决?
.ConnectionStrings["MyPersonal"].ConnectionString))
{
SqlCommand comm = new SqlCommand();
comm.Connection = conn;
conn.Open();
comm.CommandText = "select ArticleContent, dateTime, ArticleID"
+ " from dbo.Article where ArticleTitle = '" + strTitle + "'";
SqlDataReader sqlread = comm.ExecuteReader();
content.InnerHtml = "<table Width='500'><tr><td id='tdTitle'><font size=5>" + strTitle + "</font></td></tr>";
while (sqlread.Read())
{
content.InnerHtml += "<tr><td>发表日期:" + sqlread["dateTime"] + "</td></tr>";
content.InnerHtml += "<tr><td> </td></tr>";
content.InnerHtml += "<tr><td align='left'><span>" + sqlread["ArticleContent"] + "</span></td></tr>"; // 这行在保存的时候是有换号的,输出到HTML就不换行了,怎么解决?
id = int.Parse(sqlread["ArticleID"].ToString());
}
content.InnerHtml += "<tr><td> </td></tr>";
content.InnerHtml += "<tr><td align='right'><a href='EditBlog.aspx?EditID=" + id.ToString() + "'>编辑</a></td></tr>";
content.InnerHtml += "</table></br></br></br>";
}
content.InnerHtml += "<tr><td align='left'><span>" + sqlread["ArticleContent"] + "</span></td></tr>"; // 这行在保存的时候是有换号的,输出到HTML就不换行了,怎么解决?
using System.Text;
……………………………………
………………
StringBuilder sb=new StringBuilder();
sb.AppendLine(……);最后
content.InnerHtml=sb.ToString();
这样可以了,刚刚搞错了,谢谢了
string str="";
str=this.txtDescription.Text; //把TextBox中的内容先赋给str,再做处理
str=str.Replace("\r\n", "<br>");
str = str .Replace("\n", "<br>");
str = str .Replace(" ", " "); //将 content 放入数据库保存
string content=Server.HtmlEncode(str); //这里的html编码主要是将'<' 与 '>' 编码成代号符
.......
这样在数据库中就是以HTML文本格式的数据了,用Server.HtmlDecode在Label中就可以显示你在TextBox中编排的格式。但如你把数据再放回TextBox中,同理你就得重新转换一次,即:
string str1="";
str1=sdr["DepartmentDescription"].ToString();
str1=str1.Replace("<br>", "\r\n"); //在数据库中"<"是"<" ">"是">",
str1=str1.Replace("<br>", "\n");
str1=str1.Replace("&nbsp;", " "); //&表示的是&