SlideShare a Scribd company logo
1 of 20
http://netponto.org 22ª Reunião Lisboa - 23/07/2011 Criação de Visual Studio TemplatesRicardo Alves
Patrocinadores desta reunião
Ricardo Alves Membro Activo da Comunidade NetPonto +5 anos de experiência profissional C#, WCF, ASP .NET, ASP .NET MVC, SQL VS LightSwitchearlieradopter Apresentações anteriores Práticas de programação em .NET Visual Studio LightSwitch
Agenda O que são Templates Como criar um Template Criar um Wizard Criar um Installer Multiple Project Templates
Também disponível em vídeo... Assista! http://vimeo.com/27971444
O que são Templates Contêm código de base reutilizável para facilitar a criação de novos projectos / items Tudo o que vemos quando fazemos File -> New Item / Project <VisualStudioInstallDir>ommon7DEtemTemplates <VisualStudioInstallDir>ommon7DErojectTemplates Basicamente são um “zip” com os ficheiros base e um .vstemplate com a metadata do template
Como criar um Template File -> Export Template ... Corte e costura nos ficheiros Alguns parâmetros reservados $guid[1-10]$ $itemname$ $safeitemname$ $username$ Copiar zip na pasta <MyDocuments>isualStudio ...emplates
Como criar um Template File -> New Project -> Extensibility -> Item / Project Template Corte e costura nos ficheiros O resultado da build deste projecto é o ficheiro zip com o template Copiar zip na pasta <MyDocuments>isualStudio ...emplates
Demo: como criar um template demonstração
Criar um Wizard <WizardExtension>     <Assembly>AssemblystringName</Assembly>      <FullClassName>IWizardimplementingClassName</FullClassName>  </WizardExtension> IWizard RunStarted RunFinished ProjectFinishedGenerating ProjectItemFinishedGenerating
Demo: criar um wizard demonstração
Criar um Installer Criar um projectVsix Indicar o projecto de template e o wizard a usar Ele faz: Instalação do template Deploy na gac da assembly do wizard Debug do Wizard (é só fazer F5!) Controlo de “versão” out-of-the-box
Demo: criar um installer demonstração
Multiple Project Templates Template que usa outros templates para gerar multiplos projectos aka: Solution Template
Demo: multipleproject templates demonstração
Questões?
Referências Visual Studio Templates http://msdn.microsoft.com/en-us/library/6db0hwky%28v=VS.100%29.aspx Create Reusable Project And Item Templates For Your Development Team http://msdn.microsoft.com/en-us/magazine/cc188697.aspx Code Generation with Visual Studio Templates http://www.olegsych.com/2008/03/code-generation-with-visual-studio-templates/
Próximas reuniões presenciais 23/07/2011 – Julho ??/08/2011 – Agosto (Ferias! ) 24/09/2011 – Setembro (2 anos!) 22/10/2011 – Outubro 29/10/2011 – Outubro (Coimbra)Reserva estes dias na agenda! :)
Patrocinadores desta reunião
Obrigado! Ricardo Alves ricardoloboalves@netponto.org http://pt.linkedin.com/in/rmalves http://www.facebook.com/rmlalves http://twitter.com/rmlalves

More Related Content

What's hot

MVVM Deep Dive - Paulo Aboim Pinto
MVVM Deep Dive - Paulo Aboim PintoMVVM Deep Dive - Paulo Aboim Pinto
MVVM Deep Dive - Paulo Aboim Pinto
Comunidade NetPonto
 

What's hot (6)

Novidades do Visual Studio 2017 - .NET São Paulo - Maio/2017
Novidades do Visual Studio 2017 - .NET São Paulo - Maio/2017Novidades do Visual Studio 2017 - .NET São Paulo - Maio/2017
Novidades do Visual Studio 2017 - .NET São Paulo - Maio/2017
 
Curso ASP.NET MVC 3 - Vinicius Quaiato
Curso ASP.NET MVC 3 - Vinicius QuaiatoCurso ASP.NET MVC 3 - Vinicius Quaiato
Curso ASP.NET MVC 3 - Vinicius Quaiato
 
A trilogia Spring MVC + Spring Data + AngularJS
A trilogia  Spring MVC + Spring Data + AngularJSA trilogia  Spring MVC + Spring Data + AngularJS
A trilogia Spring MVC + Spring Data + AngularJS
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
São Paulo MuleSoft Meetup - Unwired API Led & Custom Polices
São Paulo MuleSoft Meetup - Unwired API Led & Custom PolicesSão Paulo MuleSoft Meetup - Unwired API Led & Custom Polices
São Paulo MuleSoft Meetup - Unwired API Led & Custom Polices
 
MVVM Deep Dive - Paulo Aboim Pinto
MVVM Deep Dive - Paulo Aboim PintoMVVM Deep Dive - Paulo Aboim Pinto
MVVM Deep Dive - Paulo Aboim Pinto
 

Similar to Criação de Visual Studio Templates Personalizados

[CLPE] Visual Studio 2010
[CLPE] Visual Studio 2010[CLPE] Visual Studio 2010
[CLPE] Visual Studio 2010
Felipe Pimentel
 
Palestra novidades do Visual Studio 2010 - Community Launch
Palestra novidades do Visual Studio 2010 - Community LaunchPalestra novidades do Visual Studio 2010 - Community Launch
Palestra novidades do Visual Studio 2010 - Community Launch
Waldyr Felix
 
Desenvolvimento web com python e django
Desenvolvimento web com python e djangoDesenvolvimento web com python e django
Desenvolvimento web com python e django
Igor Sobreira
 

Similar to Criação de Visual Studio Templates Personalizados (20)

[CLPE] Visual Studio 2010
[CLPE] Visual Studio 2010[CLPE] Visual Studio 2010
[CLPE] Visual Studio 2010
 
Palestra Netbeans 6 Campus Party
Palestra Netbeans 6 Campus PartyPalestra Netbeans 6 Campus Party
Palestra Netbeans 6 Campus Party
 
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
 
Palestra novidades do Visual Studio 2010 - Community Launch
Palestra novidades do Visual Studio 2010 - Community LaunchPalestra novidades do Visual Studio 2010 - Community Launch
Palestra novidades do Visual Studio 2010 - Community Launch
 
Desenvolvimento de Aplicações com LightSwitch
Desenvolvimento de Aplicações com LightSwitchDesenvolvimento de Aplicações com LightSwitch
Desenvolvimento de Aplicações com LightSwitch
 
Workshop ASP.NET MVC 5
Workshop ASP.NET MVC 5Workshop ASP.NET MVC 5
Workshop ASP.NET MVC 5
 
Dev401 novos recursos do microsoft visual basic 2010
Dev401 novos recursos do microsoft visual basic 2010Dev401 novos recursos do microsoft visual basic 2010
Dev401 novos recursos do microsoft visual basic 2010
 
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
 
Principais novidades do Entity Framework 5.0
Principais novidades do Entity Framework 5.0Principais novidades do Entity Framework 5.0
Principais novidades do Entity Framework 5.0
 
.NET e ASP.NET Core 2.2, .NET Core 3, Visual Studio 2019: uma visão geral - ....
.NET e ASP.NET Core 2.2, .NET Core 3, Visual Studio 2019: uma visão geral - .....NET e ASP.NET Core 2.2, .NET Core 3, Visual Studio 2019: uma visão geral - ....
.NET e ASP.NET Core 2.2, .NET Core 3, Visual Studio 2019: uma visão geral - ....
 
ASP.Net MVC no VS 2010
ASP.Net MVC no VS 2010ASP.Net MVC no VS 2010
ASP.Net MVC no VS 2010
 
[Natal Nerd] IT Talks - NET Core
[Natal Nerd] IT Talks - NET Core[Natal Nerd] IT Talks - NET Core
[Natal Nerd] IT Talks - NET Core
 
TDC2016SP - O que há de novo no Entity Framework Core 1.0
TDC2016SP - O que há de novo no Entity Framework Core 1.0TDC2016SP - O que há de novo no Entity Framework Core 1.0
TDC2016SP - O que há de novo no Entity Framework Core 1.0
 
Entity Framework 7.0 a.k.a Entity Core 1.0
Entity Framework 7.0 a.k.a Entity Core 1.0Entity Framework 7.0 a.k.a Entity Core 1.0
Entity Framework 7.0 a.k.a Entity Core 1.0
 
ASP.Net MVC 3 - o que há de novo (TechEd)
ASP.Net MVC 3 - o que há de novo (TechEd)ASP.Net MVC 3 - o que há de novo (TechEd)
ASP.Net MVC 3 - o que há de novo (TechEd)
 
CEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniterCEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniter
 
Novidades ASP .NET MVC 3 (BETA)
Novidades ASP .NET MVC 3 (BETA)Novidades ASP .NET MVC 3 (BETA)
Novidades ASP .NET MVC 3 (BETA)
 
Introdução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular jsIntrodução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular js
 
Desenvolvimento web com python e django
Desenvolvimento web com python e djangoDesenvolvimento web com python e django
Desenvolvimento web com python e django
 
Palestra SFD etec Netbeans e Java 3D
Palestra SFD etec Netbeans e Java 3DPalestra SFD etec Netbeans e Java 3D
Palestra SFD etec Netbeans e Java 3D
 

More from Comunidade NetPonto

Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComo deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Comunidade NetPonto
 
Case studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store AppsCase studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store Apps
Comunidade NetPonto
 
Aspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharpAspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharp
Comunidade NetPonto
 

More from Comunidade NetPonto (20)

Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
 
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
 
MVVM Light e Cimbalino Toolkits - Sara Silva
MVVM Light e Cimbalino Toolkits - Sara SilvaMVVM Light e Cimbalino Toolkits - Sara Silva
MVVM Light e Cimbalino Toolkits - Sara Silva
 
Deep dive into Windows Azure Mobile Services - Ricardo Costa
Deep dive into Windows Azure Mobile Services - Ricardo CostaDeep dive into Windows Azure Mobile Services - Ricardo Costa
Deep dive into Windows Azure Mobile Services - Ricardo Costa
 
The power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno CanceloThe power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno Cancelo
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis Paulino
 
ASP.NET Signal R - Glauco Godoi
ASP.NET Signal R - Glauco GodoiASP.NET Signal R - Glauco Godoi
ASP.NET Signal R - Glauco Godoi
 
NoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor TomazNoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor Tomaz
 
HTML5 - Pedro Rosa
HTML5 - Pedro RosaHTML5 - Pedro Rosa
HTML5 - Pedro Rosa
 
De Zero a Produção - João Jesus
De Zero a Produção - João JesusDe Zero a Produção - João Jesus
De Zero a Produção - João Jesus
 
OData – Super Cola W3
OData – Super Cola W3OData – Super Cola W3
OData – Super Cola W3
 
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComo deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
 
Case studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store AppsCase studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store Apps
 
Aspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharpAspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharp
 
Utilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosUtilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes Unitários
 
Dinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de ProjectoDinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de Projecto
 
KnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida realKnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida real
 
Como ser programador durante o dia e mesmo assim dormir bem à noite
Como ser programador durante o dia e mesmo assim dormir bem à noiteComo ser programador durante o dia e mesmo assim dormir bem à noite
Como ser programador durante o dia e mesmo assim dormir bem à noite
 
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto ProieteWindows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
 
Uma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIUma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web API
 

Criação de Visual Studio Templates Personalizados

  • 1. http://netponto.org 22ª Reunião Lisboa - 23/07/2011 Criação de Visual Studio TemplatesRicardo Alves
  • 3. Ricardo Alves Membro Activo da Comunidade NetPonto +5 anos de experiência profissional C#, WCF, ASP .NET, ASP .NET MVC, SQL VS LightSwitchearlieradopter Apresentações anteriores Práticas de programação em .NET Visual Studio LightSwitch
  • 4. Agenda O que são Templates Como criar um Template Criar um Wizard Criar um Installer Multiple Project Templates
  • 5. Também disponível em vídeo... Assista! http://vimeo.com/27971444
  • 6. O que são Templates Contêm código de base reutilizável para facilitar a criação de novos projectos / items Tudo o que vemos quando fazemos File -> New Item / Project <VisualStudioInstallDir>ommon7DEtemTemplates <VisualStudioInstallDir>ommon7DErojectTemplates Basicamente são um “zip” com os ficheiros base e um .vstemplate com a metadata do template
  • 7. Como criar um Template File -> Export Template ... Corte e costura nos ficheiros Alguns parâmetros reservados $guid[1-10]$ $itemname$ $safeitemname$ $username$ Copiar zip na pasta <MyDocuments>isualStudio ...emplates
  • 8. Como criar um Template File -> New Project -> Extensibility -> Item / Project Template Corte e costura nos ficheiros O resultado da build deste projecto é o ficheiro zip com o template Copiar zip na pasta <MyDocuments>isualStudio ...emplates
  • 9. Demo: como criar um template demonstração
  • 10. Criar um Wizard <WizardExtension> <Assembly>AssemblystringName</Assembly> <FullClassName>IWizardimplementingClassName</FullClassName> </WizardExtension> IWizard RunStarted RunFinished ProjectFinishedGenerating ProjectItemFinishedGenerating
  • 11. Demo: criar um wizard demonstração
  • 12. Criar um Installer Criar um projectVsix Indicar o projecto de template e o wizard a usar Ele faz: Instalação do template Deploy na gac da assembly do wizard Debug do Wizard (é só fazer F5!) Controlo de “versão” out-of-the-box
  • 13. Demo: criar um installer demonstração
  • 14. Multiple Project Templates Template que usa outros templates para gerar multiplos projectos aka: Solution Template
  • 17. Referências Visual Studio Templates http://msdn.microsoft.com/en-us/library/6db0hwky%28v=VS.100%29.aspx Create Reusable Project And Item Templates For Your Development Team http://msdn.microsoft.com/en-us/magazine/cc188697.aspx Code Generation with Visual Studio Templates http://www.olegsych.com/2008/03/code-generation-with-visual-studio-templates/
  • 18. Próximas reuniões presenciais 23/07/2011 – Julho ??/08/2011 – Agosto (Ferias! ) 24/09/2011 – Setembro (2 anos!) 22/10/2011 – Outubro 29/10/2011 – Outubro (Coimbra)Reserva estes dias na agenda! :)
  • 20. Obrigado! Ricardo Alves ricardoloboalves@netponto.org http://pt.linkedin.com/in/rmalves http://www.facebook.com/rmlalves http://twitter.com/rmlalves