簡體   English   中英

ASP.NET Webforms的中繼器中Eval數據庫列值的HTML解碼

[英]HTML Decoding of Eval database column value in repeater of ASP.NET webforms

我試圖從數據庫中獲取HTML編碼的值(通過響應的文本編輯器控件進行處理和輸入),並將其解碼以在Webform頁面中顯示為普通純文本。

我可以使用中繼器中的Eval方法獲取值,如下所示

<p><%#Eval("Content")%></p>

它工作得很好。 我進一步嘗試通過以下代碼來縮短它

<%#Eval("Content").ToString().Length >= 170 ? Eval("Content").ToString().Substring(0, 170) : Eval("Content").ToString()%>

我最近添加的需要提供的數據庫值是純文本而不是HTML編碼的嗎,因此它停止工作了。

因此,我想知道是否可以使用以下代碼對編碼后的視頻進行解碼

<%=System.Web.HttpUtility.HtmlDecode()%>

我曾嘗試這樣做,但沒有喜悅,如果以下代碼錯誤,有人可以幫助或糾正我嗎(我認為)

<%=System.Web.HttpUtility.HtmlDecode(#Eval("Content"))%>

我相信您需要:

<%# System.Web.HttpUtility.HtmlDecode(Eval("Content")) %>

<%=等效於Response.Write<%#是數據綁定語法,在這種情況下,這是您所需要的。 您在Eval調用中的哈希前綴無效。

這是解釋各種ASP.NET內聯服務器標簽之間區別的有用參考: http : //weblogs.asp.net/ahmedmoosa/embedded-code-and-inline-server-tags

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM