vb.net - tutorial - reporting services visual studio 2015
Pele el HTML de la cadena en SSRS 2005(VB.NET) (5)
mi SSRS DataSet devuelve un campo con HTML, por ejemplo
<b>blah blah </b><i> blah </i>.
¿Cómo elimino todas las etiquetas HTML? tiene que hacerse con VB.NET en línea
Cambiar los datos en la tabla no es una opción.
Solución encontrada ... = System.Text.RegularExpressions.Regex.Replace (StringWithHTMLtoStrip, "<[^>] +>", "")
Aquí hay un buen ejemplo usando expresiones regulares: http://www.4guysfromrolla.com/webtech/042501-1.shtml
Si sabe que el HTML está lo suficientemente formado, podría, si se asegura de que tenga un nodo raíz, convertir los datos en ese campo en un System.Xml.XmlDocument y luego obtener el valor de InnerText.
De nuevo, deberá asegurarse de que el texto tenga un nodo raíz, que puede agregar usted mismo si es necesario, ya que no tendrá importancia, y asegúrese de que el HTML esté bien formado.
Si no desea usar expresiones regulares (por ejemplo, si necesita un mejor rendimiento) puede probar un pequeño método que escribí hace un tiempo, publicado en CodeProject .
Gracias a Daniel, pero necesitaba que se hiciera en línea ... aquí está la solución:
= System.Text.RegularExpressions.Regex.Replace(StringWithHTMLtoStrip, "<[^>]+>","")
Aquí están los enlaces:
http://weblogs.asp.net/rosherove/archive/2003/05/13/6963.aspx
http://msdn.microsoft.com/en-us/library/ms157328.aspx
Me gustaría ir a Propiedades de informe y luego codificar y agregar lo siguiente
Dim mRemoveTagRegex AS NEW System.Text.RegularExpressions.Regex("<(.|/n)+?>", System.Text.RegularExpressions.RegexOptions.Compiled)
Function RemoveHtml(ByVal text As string) AS string
If text IsNot Nothing Then
Return mRemoveTagRegex.Replace(text, "")
End If
End Function
Luego puede usar Code.RemoveHtml(Fields!Content.Value)
para eliminar las etiquetas html.
En mi opinión, esto es preferible a tener múltiples copias de la expresión regular.