2010-01-31 5 views
2

J'utilise l'application web asp.net et le contrôle visualviewer de microsoft visual studio et rdlc pour créer un rapport (n'utilisant pas le reporting du serveur sql). J'ai utilisé la table des produits pour voir le résultat. Il a cinq champs et j'affiche tous les éléments dans le rapport. Un champ est Description et il stocke le code html en tant que valeur (par exemple:Rendu du code html dans le rapport du client du serveur sql (rdlc)

<div><ul><li>a</li><li>b</li></ul><b>aaaa</b></div> 

). Je veux disply la sortie de ce code html dans le champ de description de mon rapport. Mais dans mon rapport, il montre la valeur html que j'ai stockée dans ma table (:

<div><ul><li>a</li><li>b</li></ul><b>aaaa</b></div> 

). Comment puis-je rendre le code HTML dans mon rapport. S'il vous plaît donnez-moi une solution.

Répondre

2

Cher Massoud comme GBN a mentionné dans son lien, par défaut SSRS ne fournit aucune solution à Render HTMl du bloc de code HTML. mais vous pouvez utiliser une de ces solutions pour rendre HTML dans les rapports SSRS.

  1. Utilisation de SQLCLR pour créer un HTML PNG et Rendue Sendit toyour rapports
  2. utilisation HTMLDecoder pour décoder le bloc de code html HTML REÇUS. ce script peut trouver à l'adresse:
  3. Vous pouvez utiliser ci-dessous bloc de code pour convertir simplement le code html à Rendue HTML

    Public Shared Function ConvertRtfToText(ByVal input As String) As String 
        Dim returnValue As String = String.Empty 
         Using converter As New System.Windows.Forms.RichTextBox() 
           converter.Rtf = input 
           returnValue = converter.Text 
         End Using 
        Return returnValue 
    End Function 
    

Vous pouvez également utiliser ce bloc de code

Function RtfToText(ByVal value As String) As String 
    If value.Contains("rtf1") Then 
     Return System.Text.RegularExpressions.Regex.Replace(System.Text.RegularExpressions.Regex.Replace(System.Text.RegularExpressions.Regex.Replace(System.Text.RegularExpressions.Regex.Replace(value,"[\n\r\f]", ""), "({\\)(.+?)(})|(\\)(.+?)(\b)", ""), "{", ""), "}", "").Trim() 
    End If 
    Return value 
    End Function 

vous pouvez enfin appeler ce code sur votre zone de texte avec

=Code.RtfToText(Fields!HTMLCode.Value) 
Vous pouvez également utiliser un utilitaire comme http://pebblereports.com/reportingservicesutilities/ pour afficher HTML rendu dans SSRS
Questions connexes