View Components no ASP.NET Core 1.1

Renato Groffe
3 min readJan 30, 2017

--

Conforme abordei anteriormente em outro artigo, View Components são mais um dos novos recursos que integram o ASP.NET Core. Estas estruturas favorecem o reuso de código, ao permitir a inclusão de conteúdo HTML ao longo de várias Views de um projeto Web.

Até a versão 1.0.1 do ASP.NET Core o uso de View Components só era possível por meio de código .NET inserido em uma View, o que envolvia uma chamada ao método InvokeAsync do objeto Component:

Com o ASP.NET Core 1.1 agora também é possível invocar um View Component empregando a sintaxe típica de uma Tag Helper. Para isto será necessário:

  • Referenciar a biblioteca em que se encontra o View Component (neste exemplo o projeto TesteViewComponent), com isso acontecendo por meio da diretiva @addTagHelper;
  • Utilizar a tag vc acompanhada do nome do componente (separando estes dois itens por “:”), além de informar eventuais parâmetros sob a forma de atributos.

Na próxima imagem é possível observar o resultado da execução deste segundo exemplo:

Analisando o HTML gerado observamos o seguinte código (com o conteúdo produzido pelo View Component destacado em vermelho):

Como o View Component Lista foi implementado?

Para o View Component Lista foram criados uma classe e uma View Razor (ambas destacadas a seguir):

O código esperado para a classe ListaViewComponent está na seguinte listagem:

E a próxima listagem traz o código que define a View Default.cshtml:

Maiores detalhes sobre a implementação destes itens podem ser encontrados neste link.

E para fechar este post, deixo aqui um convite. No dia 09/02 (quinta) farei uma apresentação online sobre a implementação e uso de middlewares no ASP.NET Core, às 22h00 - horário de Brasília. Será uma ótima oportunidade para todos aqueles interessados em conhecer mais sobre o novo ASP.NET, já que os middlewares são uma das principais estruturas que compõem a arquitetura desta nova plataforma.

Para efetuar sua inscrição acesse este link, a transmissão será via YouTube em um link a ser divulgado futuramente.

Este será mais um evento gratuito promovido pelo Canal .NET, dando andamento à série de vídeos já produzidos sobre ASP.NET Core. Caso queira assistir alguma das apresentações já realizadas acesse esta playlist:

--

--

Renato Groffe
Renato Groffe

Written by Renato Groffe

Microsoft Most Valuable Professional (MVP), Multi-Plataform Technical Audience Contributor (MTAC), Software Engineer, Technical Writer and Speaker

No responses yet