DevMedia
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da .net Magazine DIGITAL
ou para quem possui Créditos DevMedia.

Clique aqui para saber como acessar este post

1) Torne-se um assinante MVP e por apenas R$ 69,90 por mês você terá acesso completo a todos os posts. Assinar MVP

2) Adquira Créditos: comprando R$ 180,00 em créditos esse post custará R$ 1,20. Comprar Créditos

Revista MSDN Magazine Edição 09 - User Controls compartilhados via GAC

O objetivo deste artigo é mostrar a criação de um user control utilizando CodeBehind que possa ser compartilhado entre aplicações Web e permitir que o projeto consumidor descreva o comportamento dos eventos do user control.

[fechar]

Você não gostou da qualidade deste conteúdo?

(opcional) Você poderia comentar o que não lhe agradou?

Confirmo meu voto negativo

msdn09_capa.JPG

Clique aqui para ler todos os artigos desta edição

 

User Controls compartilhados via GAC
por Marcos Santos e Alexandre Santos

 

User Control é uma página ASP.NET logicamente convertida como um controle, ou seja, um componente. Uma das principais características dos user controls, é a capacidade de permitir a reutilização do mesmo conteúdo e da mesma lógica de programação em várias páginas de um mesmo projeto, além de poder ser manipulado como um objeto. Contudo, surgiu a necessidade de se reutilizar estes user controls em mais de uma aplicação ASP.NET, sendo o caminho mais conhecido, o de copiá-los para dentro da nova aplicação em questão. No entanto isso pode trazer problemas na hora da manutenção, ao precisarmos atualizar todas as réplicas existentes. Novas soluções foram aparecendo no intuito de fazer com que diferentes aplicações “enxergassem” a mesma cópia do user control, entretanto sempre sem a possibilidade da utilização do CodeBehind, fazendo com que o desenvolvedor perdesse as vantagens fornecidas por este conceito.

O objetivo deste artigo é mostrar a criação de um user control utilizando CodeBehind que possa ser compartilhado entre aplicações Web e permitir que o projeto consumidor descreva o comportamento dos eventos do user control. Para isto, será feita uma ligeira explanação sobre o GAC (Global Assembly Cache), que permite este compartilhamento.

Para aumentar a compreensão, simulemos que existam duas aplicações Web distintas que manipulam o mesmo banco de dados Northwind do SQL Server. A primeira seria uma aplicação de Relatórios (Report) e a outra de gerenciamento dos dados (Manager). Imagine que em ambas as aplicações exista a necessidade de um DataGrid com a listagem das Categorias, por exemplo, para a aplicação Report com uma opção de filtro de um relatório específico e na aplicação Manager um cadastro de Categorias. Seria interessante se criarmos apenas um único UserControl que faça o acesso ao banco de dados,  popule o DataGrid e ainda permita que a aplicação consumidora descreva o comportamento da ação ao clicar no botão que seleciona a categoria desejada pelo internauta.

Projeto

Crie um projeto ASP.NET Web Application chamado UserControlCompartilhado usando como linguagem o Visual C#. O Visual Studio .NET criou 4 arquivos, mas como este projeto conterá apenas o user control, algo semelhante a um componente, três destes arquivos devem ser apagados (Global.asax, Web.config e WebForm1.aspx) para que o mesmo não seja interpretado pelo serviço de Internet (IIS) como uma aplicação Web. Portanto, apenas o arquivo AssemblyInfo.cs permanecerá.

Insira um Web User Contol chamado ucGridCategorias.ascx. Note que a extensão do arquivo é .ascx, denotando ser um controle (componente) e que “roda” apenas quando adicionado num WebForm.aspx.

Através do menu Table / Insert / Table desenhe uma tabela com duas linhas, uma coluna e largura de 400 pixels. Para a primeira linha arraste um componente Label da ToolBox Web Forms, que será utilizado como informação ao internauta, com propriedades id = lbInformacao e Text em branco; Na segunda linha da tabela, arraste um componente DataGrid, com propriedades id = gridCategorias e AutoGenerateColumns = False.

Dica: Clique com o botão direito e selecione Auto Format para formatá-lo de acordo com a sua necessidade.

Como as colunas do DataGrid não serão montadas automaticamente é preciso informar quais colunas irão preenchê-lo. Para isso, pressione o botão direito no gridCategorias e selecione Property Builder. Na guia de Columns, localize a lista de Available Columns e selecione as seguintes colunas com as devidas propriedades:

 

Coluna

Header

Data Field

1 Button Column (tipo Select)

 

"

A exibição deste artigo foi interrompida

Este post está disponível para assinantes MVP.



Marcos Santos (mossantos@hotmail.com) e Alexandre Santos (alexandrecpd@hotmail.com) são graduados em Ciências da Computação na UFSC, trabalham como Analistas de Sistemas na Softway Contact Center e com a plataforma .NET desde a ve [...]

O que você achou deste post?
Publicidade
Serviços

Mais posts