2015-12-09 4 views
3

J'essaie de trouver un moyen de rendre un contrôle (partie d'une page Web) afin que je puisse l'ajouter à un flux RSS (xmlns:content avant tout le monde).Rendre un contrôle (pour un flux RSS)

var rendering = item.Visualization.GetRenderings(Context.Device, false) 
       .FirstOrDefault(it => it.RenderingID.ToString() == "{968B82C4-46D9-43F3-AD52-82AA2629156B}"); 

if (rendering!= null) 
{ 
    var sb = new System.Text.StringBuilder(); // needed? 
    var sw = new StringWriter(sb); 
    using (var wr = new HtmlTextWriter(sw)) 
     rendering.GetControl().RenderControl(wr); 
} 

Ce que je trouve est que sw est vide et je l'attendais pour contenir html (les écrans de contrôle fin sur le site). Des pensées?

Répondre

0

Je ne pense pas qu'il existe un moyen facile d'y parvenir. Sitecore exécute des pipelines différents selon qu'il s'agit de XSL, WebForms ou MVC ...

Il y avait déjà une question sur Stack demandant la même chose: How to get content of rendering programmatically? Mais comme vous pouvez le voir, l'auteur a abandonné l'idée car il n'y avait aucun moyen de l'obtenir facilement.