produtividade na criação de websites com asp.net mvc
Post on 05-Dec-2014
1.375 Views
Preview:
DESCRIPTION
TRANSCRIPT
Produtividade na criação de websites com ASP.NET MVC
Waldyr FelixMVP, MCPD, MCTS, MCP Arquiteto de software e ConsultorE-mail: waldyrfelix@mwnow.com.brBlog: waldyrfelix.net | Twitter: @WaldyrFelix
MVC
1.Usar as convenções do ASP.NET MVC2.Template Scaffolding 3.Entity Framework Code First & Migrations4.Partial Views e Template Views5.Validações via Data Annotations6.Crie HTML Helpers7.Use Bootstrap8.Web Essentials
O que veremos hoje
Vocês depois da palestra
• Existem diversas convenções no ASP.NET MVC• Respeitar nomes dos Controllers nas pastas das Views• Nomear as Views com o mesmo nome das Actions• Deixar os nomes das Actions de GET e POST de uma
mesma tela com o mesmo nome• Seguir o padrão de rotas estabelecido no projeto• Usar os Model Binders para pegar os dados da
requisição
1) Usar as convenções do ASP.NET MVC
Controllers tem uma pasta correspondente de mesmo nome
Para cada Action que renderize uma páginadeve haver uma View de mesmo nome
As Partial Views devem ter um underscorecomo prefixo em seus nomes
Convenção de nomes de pasta
Actions de GET e POST
Exemplo de rota padrão
http://localhost/Produto/Editar/2
Parâmetro da rota
Nome da action
Nome do controller
Domínio
• Possibilitam usar classes customizadas como parâmetro das Actions
• Usam convenção de nomes para preenchimento dos dados
Model Binders
public ActionResult Criar(Produto produto){...
public ActionResult Criar(Produto[] produtos){...
• Gera código repetitivo das Views e Controllers• Pode ser usado para criar somente as actions do
Controller ou para gerar o CRUD completo• Existem Scaffolding de Controllers e de APIs• Já vem por padrão no Visual Studio• Pode ser customizado para atender necessidade do
projeto
2) Template Scaffolding
• Botão direito na pasta Controllers > Add > Controller...
Gerar código a partir dos templates scaffolding
• Basta copiar o template padrão para dentro do projeto
• Geralmente ficam na pasta: “C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\ItemTemplates\CSharp\Web\MVC 4\CodeTemplates”
• Depois de copiado, basta alterar o template T4 para se adequar a seu projeto
• Para criar as telas novamente basta seguir o mesmo processo de sempre
Customizando os templates scaffolding
3) Entity Framework Code First & Migrations
• Criar primeiro as classes “Entidades” depois criamos o banco
• Não precisamos saber o que está acontecendo no banco de dados
• Trabalhar completamente orientado a objetos de verdade!
• Sem EDMX• Maior controle sobre as configurações• As mina pira
Entity Framework Code First
• Versionar o banco de dados usando C#
• Permite fazer upgrade e downgrade das versões
• Funciona dentro ou fora do Visual Studio através de linha de comando
• Não elimina os dados quando muda o esquema do banco
• É lindo
Entity Framework Migrations
Vamos ver isso tudo na prática!!!
Já podemos descansar… Só que não
• As Partial Views são pequenos trechos de Views que podem ser reutilizados em vários pontos
• São como os User Controls do Web Forms• Os Template Views são pedaços de Views que
podem ser utilizados a partir de um tipo de dado• Existem Templates de edição e de visualização
4) Partial Views e Template Views
Vamos ver isso tudo na prática!!!
• Esse tipo de validação é feita no Model • Usam atributos (data annotations) para
descrever o que será validado• Afetam tanto o servidor como o cliente
(validação em JavaScript)• Não precisa mudar nada nas Views somente
no Model
5) Validações via Data Annotations
Vamos ver isso tudo na prática!!!
• Os Helpers são os controles do ASP.NET MVC• Através deles podemos criar componentes
reutilizáveis em vários projetos• Componentes de tela que aparecem muitas
vezes num Sistema ou em vários Sistemas devem feitos com HTML Helpers
6) Crie HTML Helpers
@Html.TextBoxFor(model => model.Name)
@Html.MeuHelper(model => model.Name)
• Ferramenta para criar rapidamente sites usando um padrão pré definido
• Muito usado para criar protótipos de tela rapidamente
• Tornou-se um padrão para a construção de sites
• Existem milhares de templates prontos
6) Use Bootstrap
• Extensão do Visual Studio que ajuda no desenvolvimento Web
• Vários facilitadores para HTML, CSS e JavaScript
• Tools > Extensions and Updates… Web Essentials
7) Web Essentials
HTML/CSS/JavaScript
Muito obrigado a todos!
Waldyr FelixE-mail: waldyrfelix@mwnow.com.brBlog: waldyrfelix.net | Twitter: @WaldyrFelix
top related