Clique aqui para ler todos os artigos desta edição
Controle RSS
Introdução a anatomia de um Web Server Control
por Fernando Cerqueira
Este artigo discute: |
Este artigo usa as seguintes tecnologias: |
· Principais conceitos na construção de um Web Server Control · Noção básica de RSS , XML e XSL. · Criação de um RSS Web Server Control |
Visual Basic .NET, XML e XSL, Embeding Download: RssControl.zip (81KB) |
Chapéu Web Server Control, VB.NET |
|
Criar controles personalizados é muito comum no dia a dia do desenvolvedor. O mais simples deles, o User Controls é facilmente implementado e muito popular, porém, em alguns cenários possui algumas desvantagens em relação aos Web Server Controls. O objetivo deste artigo é uma introdução a criação de Web Server Control demonstrando suas principais características.
A popularização dos blogs e uso cada vez maior do padrão Xml, vêm contribuindo para que cada vez mais sites disponibilizem informações no formato RSS. É comum hoje ler artigos, notícias e outros dados neste formato. Estas características nos levaram a escolher como base de exemplo a criação de um leitor de RSS para este artigo. O resultado final será um controle funcional, com feedback de layout em modo de design, podendo ser usado nos seus projetos sem escrever uma única linha de código.
Conceitos
O que são Web Server Controls..
Um dos principais critérios para qualificar um Web Server Control é a herança de System.Web.UI.Control ou System.Web.UI.Controls.WebControl de forma direta ou indireta (de outro Web Server Control). Outras características importantes são: capacidade de gerar uma saída quando ocorre uma solicitação de Http; capacidade de ser armazenado no GAC (Global Assemby Cache); compartilhamento em diversos projetos em um único assembly.
A Figura 1 apresenta a estrutura hierárquica da classe System.web.UI que deriva os web server controls.
Figura 1 - Organização hierárquica da classe System.Web.UI
As principais diferenças entre Web Sever controls e User Control:
· Os Web server controls são persistidos e compilados em uma DLL. Os User Controls são persistidos em arquivo texto (ascx);
· Os Web Server Controls podem ser adicionados na Toolbox possuindo recursos completos para o ambiente de design. Os User Controls não podem ser adicionados na Toolbox e são instanciadas cópias a cada projeto;
· Os Web Server Controls têm sua distribuição de forma genérica, independente do aplicativo. Os User Controls estão associados à aplicação e são distribuídos junto com as mesmas.
Os Tipos de Web Server Controls
Basicamente podemos citar três tipos de Web Server Controls:
Simples ou Básicos: são Web Server Controls que não possuem outros Web Server Controls em sua criação e sobreescreve o método Render, gerando o resultado em um tipo System.Web.UI.HtmlTextWriter. São os mais simples de serem criados, podendo ou não implementar a interação com o Postback. Os métodos e eventos são resolvidos em tempo de execução.
Compostos (Composite): são Web Server Controls que possuem outros Web Server Controls em sua criação, sobreescreve o método CreateChildControls instanciando uma coleção de controles: Controls collection. Não é necessário sobreescrever o método Render, pois os Childs Controls já provêem o Render Lógico. Embora sejam mais complexos, têm a vantagem de resolver os eventos e métodos em tempo de compilação.
Apresentação (Templates): são Web Server Controls com a capacidade de prover ferramentas para conter novos controles e ...