Actualité Tutoriels Liens contact dotnet-tech.com - Home - Tutoriels techniques avec code source Dotnet-tech.com : Les site sur les technologies .Net

Emploi by Jobintree

Générer et publier un flux RSS en .Net


24/08/2004
Par Laurent Geffroy



Version PDF à télécharger
Code Source

Droit de diffusion:
L'ensemble ou partie de ce document ainsi que le code mis à disposition, ne peut être diffusé sur d'autres sites Web sans l'autorisation au préalable de son créateur.

Avant Propos :
Initié par Netscape, le rss est un moyen simple d’ouvrir le contenu de votre site autrement que par l’utilisation de XML WebServices. Ce tutoriel a trois objectifs :

  • Vous fournir gratuitement les sources du générateur de flux rss
  • Vous montrer comment il fonctionne
  • Découvrir surtout la simplicité par laquelle on génère un flux XML avec .net
N’hésitez pas à télécharger les sources.

Sommaire:

1. Le constructeur de flux RSS
2. La génération du flux rss
3. En Savoir plus

1. Le constructeur de flux RSS

Le projet rss dispose de 3 structures qui permettent de construire proprement les données qu’attendent le flux rss.

enum_langue est une énumération de codes langues afin d’éviter l’insertion de données un peut trop exotiques.

struct_entete alimente les données de base du flux rss comme l’url du site, l’éditeur et éventuellement l’image d’accompagnement structurée dans struct_image.

struct_detail s’articule autour des publications à exposer.




La méthode builder va nous permettre de construire le flux rss qui sera exposé dans le Page.Response.Output de la page ASPX.



Ma méthode ConstruitRss fabrique le corps du flux XML.

WriteStartDocument() me permet de démarrer mon document XML.

WriteStartElement({MonElement}) construit un nœud sur lequel je peux ajouter un attribut avec WriteAttributString({MonAttribut},{SaValeur}).



La méthode AjoutePublication permet l’insertion d’un item rss. Les données sont passées dans la variable p_datas. On utilise toujours WriteStartElement() et WriteElementString() pour ajouter un nœud fils.

N’oublions pas le WriteEndElement() pour fermer le nœud.



Enfin, la méthode FinDuDocument() clôt les différents nœuds et le document XML.

2. La génération du flux rss

Le moment est venu de générer le flux rss.

Afin que votre flux soit accessible depuis l’url http://MonSite/rss, créer une page index.aspx qui devra être définit comme page par défaut du répertoire dans les paramètres IIS.

Pour la démonstration, nous avons créé une page rss.aspx. Commencez par supprimer toutes les données HTML de la page générée par VisualStudio.net.



Comme souvent, c’est dans le Page_Load que tout ce passe. Notez le codage du rss en ISO-8859-1 afin de tenir compte des caractères étendus utilisés dans la langue française.

On spécifie un retour de la requête sous forme text/xml.

J’alimente ensuite mes données dans ma structure d’entête. Je préfère utiliser une structure plutôt que de passer n arguments à ma méthode. Si par malheur vous aviez oublié de passer un argument, vous seriez obligé de modifier tous les appels. La structure s’avère plus souple dans le cadre de la maintenance de votre code source.

On créé alors une nouvelle instance de l’objet builder qui sera exposée en réponse http et on appelle la méthode ConstruitRss avec les données de l’entête.



Viens maintenant l’ajout des items ou publications. J’alimente toujours une structure, celle du détail et d’invoque la méthode AjoutePublication().

Ne surtout pas oublier la méthode FinDuDocument() qui va clôturer le flux rss.

Et c’est tout ! Votre flux rss est maintenant publié en un temps record.

3. En Savoir plus

RSS sur XML.FR
http://xmlfr.org/actualites/tech/000816-0001

RSS Reader, freeware développé sur le framework .net
http://www.rssreader.com

L’auteur : Laurent GEFFROY
http://www.laurentgeffroy.com lgeffroy-at-club-internet.fr









Accueil - Tutoriels & Articles - Liens - A Propos de l'auteur dotnet-tech.com : le site des technologies .net

www.dotnet-tech.com - 2003-2007