ID do artigo: 910446 - Última revisão: sexta-feira, 16 de março de 2007 - Revisão: 1.3

Carregar Web Parts em um catálogo em tempo de execução

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Coluna de voz de suporte do ASP.NET

Carregar Web Parts em um catálogo em tempo de execução

para personalizar esta coluna às suas necessidades, queremos convidá-lo para enviar suas idéias sobre tópicos que interessam a você e problemas que você deseja ver abordados artigos do Knowledge Base no futuro e colunas de voz de suporte. Você pode enviar suas idéias e comentários usando o formulário Ask For It (http://support.microsoft.com/common/survey.aspx?scid=sw;en;1176&p0=&p1=&p2=&p3=&p4=) . Há também um link para o formulário na parte inferior desta coluna.
Expandir tudo | Recolher tudo

INTRODUÇÃO

Bem-vindo à coluna ASP.NET suporte voz! Estou Jerry Andrade. Eu foram com a Microsoft há mais de cinco anos e passaram a maior parte do meu tempo enfoca relacionada à Web tecnologias como o Microsoft FrontPage e Microsoft SharePoint Products e tecnologias. Passei o ano passado, trabalhar com o Microsoft ASP.NET como um engenheiro de suporte.

O ASP.NET 2.0 apresenta a estrutura de Web Part fora do ambiente do SharePoint. Isso permite aos desenvolvedores criar aplicativos que são configuráveis pelo usuário em tempo de execução. A classe CatalogPart é usada para fornecer uma lista de Web Parts para os usuários em tempo de execução. Fora da caixa, o ASP.NET 2.0 não fornece um catálogo que é preenchido em tempo de execução. Esta coluna suporte voz discutirá como criar um catálogo personalizado para essa finalidade.

Mais Informações

Fora da caixa, o ASP.NET 2.0 fornece os seguintes catálogos: Portanto, como você pode ver, não há nada fora da caixa que permitirá que você cancele DLLs em uma pasta e peça-lo a obter pegou como Web Parts em tempo de execução. Para fazer isso, você precisará criar uma classe CatalogPart personalizada e substituir os seguintes métodos: O exemplo a seguir demonstra como criar um catálogo personalizado que usa a reflexão para preencher a lista de Web Parts em tempo de execução. Este exemplo é fornecido como - é e destina-se apenas a fins de demonstração. O seguinte arquivo está disponível para download no Centro de download da Microsoft:

Recolher esta imagemExpandir esta imagem
Download
Download the CustomCatalogSample.exe package now. (http://download.microsoft.com/download/c/8/0/c8034014-ab56-42b5-bd8e-d2d49c2d0dca/customcatalogsample.exe)

Para obter mais informações sobre como baixar os arquivos de suporte da Microsoft, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
119591  (http://support.microsoft.com/kb/119591/ ) Como obter arquivos de suporte da Microsoft de serviços on-line
Microsoft examinou esse arquivo em busca de vírus. Microsoft utilizou o mais recente software de detecção de vírus que estava disponível na data em que o arquivo foi publicado. O arquivo é armazenado em servidores com segurança avançada que ajudam a evitar qualquer alteração não autorizada no arquivo.

Vamos examinar os projetos de exemplo para que você possa obter uma idéia de que você está chegando em. O código é comentado totalmente, que deve fazer para alguns excelente leitura.

O exemplo inclui três projetos:
  • Projeto de classe MyControls
    • ReflectionCatalogPart
      Esta é a classe que faz o trabalho para o catálogo.
  • Projeto de classe SampleWebParts
    • RSSPart.cs
      Isso é uma Web Part que escrevi que vá check-out e extrair dados de um RSS2 feed. Você pode aprofundar isso mais para adicionar modelos diferentes e armazenamento em cache.
    • FeaturedProductPart.cs ICategoryInterface.cs e SelectCategory.cs
      Estes são do seguinte artigo MSDN:
      http://msdn2.microsoft.com/en-us/library/ms379628(VS.80).aspx (http://msdn2.microsoft.com/en-us/library/ms379628(VS.80).aspx)
      Incluí-las aqui para criar a lista de Web Parts.
  • Site CustomParts
    • Default.aspx
      Este arquivo unidades o exemplo. Ele possui todos os vários catálogos e partes já foi declarados na página.
    • MyControls
      • CatalogTemplate.ascx
        Esse arquivo é usado na propriedade WebPartsListUserControlPath da classe DeclarativeCatalogPart para demonstrar o uso dessa propriedade.
      • ReportGenerator.ascx
        Esse arquivo tem um controle GridView para mostrar usando um arquivo .ascx como uma Web Part. (Qualquer controle que não é uma Web Part é encapsulado em classe GenericWebPart quando ele é colocado em um WebPartZone .)

Para usar o exemplo, execute estas etapas:
  1. Abra o site CustomParts como um projeto file-based em Microsoft Visual Studio 2005.
  2. Adicione os MyControls classe projeto e os SampleWebParts classe projeto como projetos à solução. Para fazer isso, clique em arquivo , clique em Adicionar e, em seguida, clique em Projeto existente .
  3. Expanda Site CustomParts .
  4. Clique duas vezes no arquivo Web.config.
  5. Altere a seqüência de conexão para apontar para a instância do Microsoft SQL Server que hospeda o banco de dados Northwind.
  6. Procure o arquivo default.aspx.
  7. Clique em logon .
  8. Efetuar logon digitando a senha e BobSmith BobSmith! .
  9. No menu Modificar Web Parts , clique em catálogo .

    Você terá dois catálogos, o catálogo de Partes de reflexão e o catálogo de Partes declarativa .
Você pode exibir o arquivo ReflectionCatalogPart.cs na seção asp: CatalogZone no arquivo default.aspx para ver como funciona o catálogo personalizado e a classe MyControls . Em geral, ele verifica para determinar se há um HttpContext e, em seguida, usa reflexão para preencher e armazenar em cache as Web Parts que estão disponíveis na pasta /bin. Você pode adicionar Web Parts adicionando a DLL para a pasta /bin. Isso irá disparar uma reciclagem do AppDomain , que irá limpar o cache e permitirá que o catálogo preencher novamente-lo sobre a próxima carga.

Agora que você tem um exemplo que demonstrar como preencher o catálogo usando reflexão, você pode aproveitar isso para criar catálogos que melhor atender às suas necessidades.
Como sempre, vontade enviar idéias sobre tópicos desejado no futuro abordada colunas ou na Base de dados de Conhecimento usando o formulário Ask For It (http://support.microsoft.com/common/survey.aspx?scid=sw;en;1176&p0=&p1=&p2=&p3=&p4=) .

A informação contida neste artigo aplica-se a:
  • Microsoft ASP.NET 2.0
Palavras-chave: 
kbmt kbhowto kbasp KB910446 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 910446  (http://support.microsoft.com/kb/910446/en-us/ )
Retired KB ArticleAviso de Isenção de Responsabilidade sobre Conteúdo do KB Aposentado
Este artigo trata de produtos para os quais a Microsoft não mais oferece suporte. Por esta razão, este artigo é oferecido "como está" e não será mais atualizado.