我在ASP.net页面中从我的Db中检索了HTML内容,但所有标签都显示在我的页面中,如下所示
<p>fdvdfb <strong>fbgdfbd</strong> <em>fbfgbggggggggggggggggggggg</em></p>
<p>iuiononknonbn</p>
<p>khbkinniln</p>
但这不公平!如何删除这些标签?并在插入时显示我的文字?
我的代码是:
string query = "SELECT TOP 1[Text] FROM [News] ORDER BY Id DESC";
string conString = ConfigurationManager.ConnectionStrings["mycs"].ConnectionString;
using (SqlConnection con = new SqlConnection(conString))
{
using (SqlCommand cmd = new SqlCommand(query, con))
{
con.Open();
using (SqlDataReader sdr = cmd.ExecuteReader())
{
if (sdr.Read())
{
txtHTMLContent.Text = sdr["Text"].ToString();
}
sdr.Close();
}
con.Close();
}
}
和
<asp:TextBox ID="txtHTMLContent" runat="server" TextMode="MultiLine" Width="100%"/>
答案 0 :(得分:0)
如果您使用Razor,可以这样做:
@Html.Raw(yourvariable)
否则在ASP.NET中你可以尝试:
element.InnerHtml = Server.HtmlDecode(yourText);
答案 1 :(得分:0)
将.aspx
上的数据绑定到dataSource。你可以用声明的方式来做。
<asp:SomeKindOfRepeater runat="server" DataSourceID="sqlSourceName">
<SomeKindOftemTemplate>
<p>fdvdfb <strong>fbgdfbd</strong> <em><%#Eval("something")%></em></p>
...and so on
</SomeKindOftemTemplate>
</asp:SomeKindOfRepeater>
<asp:SomeDataSource ID="sqlSourceName" runat="server" ...>
...
</asp:SomeDataSource>
答案 2 :(得分:0)