.Net函数替换/编码和解码字符串中的HTML字符

时间:2010-07-30 11:33:02

标签: html vb.net infragistics

我有以下代码:

  Dim lStatementText As String
  Dim lStatementString As New System.Text.StringBuilder

  lStatementString.Append(RndRes.Forms.txt_request)
  lStatementString.Append(" ")
  lStatementString.Append("<b><a>")
  lStatementString.Append(Request.ID)
  lStatementString.Append("</a> - <a>")
  lStatementString.Append(Request.Description)
  lStatementString.Append("</a></b> ")
  lStatementString.Append(RndRes.Forms.txt_IsNotYetLoaded)
  lStatementString.Append(". ")
  lStatementString.Append(RndRes.Forms.txt_click)
  lStatementString.Append(" <b><a>")
  lStatementString.Append(RndRes.Forms.txt_here)
  lStatementString.Append(" </a></b> ")
  lStatementString.Append(RndRes.Forms.txt_GetFromDB)

  lStatementText = lStatementString.ToString()

  Dim lLink As New Infragistics.Win.FormattedLinkLabel.UltraFormattedLinkLabel()
  lLink.Value = lStatementText
  lLink.TreatValueAs = FormattedLinkLabel.TreatValueAs.FormattedText
  AddHandler lLink.LinkClicked, AddressOf OnLinkClicked

其中Request.ID,Request.Description以及RndRes.Forms.txt_ *都是字符串。我想在Infragistics FormattedLinkLabel中显示我在这里构建的字符串。问题是如果Request类中的任何strigs包含HTML字符,标签将无法正确显示并且HTML编码被破坏。 我需要找到一个掩盖HTML代码的函数。

2 个答案:

答案 0 :(得分:4)

如果您手头没有HttpContext对象,请查看HttpUtility.HtmlEncode:

http://msdn.microsoft.com/en-us/library/73z22y6h.aspx

答案 1 :(得分:2)

尝试Server.HtmlEncode()和Server.HtmlDecode(),http://msdn.microsoft.com/en-us/library/hwzhtkke.aspx