ASP.NET MVC ModelBinding<br />SharpShooters<br />Fernando Kakimoto<br />(@nandokakimoto)<br />
Quem Sou Eu?<br />
O que é ModelBinding?<br />
O que é ModelBinding?<br />Mecanismo do ASP.NET MVC  paramapear dados de umarequisição HTTP emparâmetros de Action Methods...
Começando com um Exemplo<br />
Como ModelBinding Funciona?<br />A classe DefaultModelBinder do ASP.NET MVC e diferentes implementações de IValueProvider ...
Como ModelBinding Funciona?<br />
Como ModelBinding Funciona?<br />
Como ModelBinding Funciona?<br />O framework utiliza a convençãonomeDoParâmetro.NomeDaPropriedadeparaassegurarque o bindac...
Como ModelBinding Funciona?<br />
Como ModelBinding Funciona?<br />Sem ModelBinding<br />Com ModelBinding<br />
Como ModelBinding Funciona?<br />DefaultModelBinderusareflectionpara saber quaispropriedadespúblicasestãoexpostasemtiposco...
Como ModelBinding Funciona?<br />View fortemente tipada?<br />
Particularidades do ModelBindind no ASP.NET MVC<br />
Escolhendo um Subconjunto de Propriedades <br />Evitar bind através de parâmetros na URL<br />
Invocando ModelBinding<br />Controle explicito<br />Instanciação dos objetos<br />Provedor de dados<br />Tratamento de err...
Invocando ModelBinding<br />Instanciação dos Objetos<br />
Invocando ModelBinding<br />Provedor de Dados<br />
Invocando ModelBinding<br />Tratamento de Erros<br />Informaçãoenviadapelousuárionuncadeve ser descartada, mesmo se inváli...
Invocando ModelBinding<br />Tratamento de Erros<br />Utiliza o objeto ModelState<br />Cada tentativa de bind armazena o no...
Invocando ModelBinding<br />Tratamento de Erros<br />
Invocando ModelBinding<br />Tratamento de Erros<br />
ModelBinding em Coleções<br />
ModelBinding em Coleções<br />
ModelBinding em Coleções<br />
Estendendo o sistema de ModelBinding do ASP.NET MVC<br />
Implementando IValueProvider<br />Permite fornecer dados extras ao sistema de ModelBinding do ASP.NET MVC<br />
Implementando IValueProvider<br />
Implementando IValueProvider<br />
Implementando IModelBinder<br />Permite configurar formas diferentes de mapear dados de entrada em tipos específicos<br />
Implementando IModelBinder<br />
Implementando IValueProvider<br />
E Finalmente....<br />
Fazendo Upload de Arquivos<br />
Fazendo Upload de Arquivos<br />
ASP.NET MVC ModelBinding<br />SharpShooters<br />Fernando Kakimoto<br />(@nandokakimoto)<br />
Próximos SlideShares
Carregando em…5
×

ASP.NET MVC - Model Binding

1.567 visualizações

Publicada em

Apresentação realizada no dia 26/01/2011 no grupo sharp

Publicada em: Tecnologia
  • Seja o primeiro a comentar

ASP.NET MVC - Model Binding

  1. 1. ASP.NET MVC ModelBinding<br />SharpShooters<br />Fernando Kakimoto<br />(@nandokakimoto)<br />
  2. 2. Quem Sou Eu?<br />
  3. 3. O que é ModelBinding?<br />
  4. 4. O que é ModelBinding?<br />Mecanismo do ASP.NET MVC paramapear dados de umarequisição HTTP emparâmetros de Action Methods e objetos .NET<br />
  5. 5. Começando com um Exemplo<br />
  6. 6. Como ModelBinding Funciona?<br />A classe DefaultModelBinder do ASP.NET MVC e diferentes implementações de IValueProvider são responsáveis por converter os dados provenientes de requisições HTTP em objetos .NET requeridos como parâmetos deActionsMethods<br />
  7. 7. Como ModelBinding Funciona?<br />
  8. 8. Como ModelBinding Funciona?<br />
  9. 9. Como ModelBinding Funciona?<br />O framework utiliza a convençãonomeDoParâmetro.NomeDaPropriedadeparaassegurarque o bindaconteça no parâmetrocorreto<br />
  10. 10. Como ModelBinding Funciona?<br />
  11. 11. Como ModelBinding Funciona?<br />Sem ModelBinding<br />Com ModelBinding<br />
  12. 12. Como ModelBinding Funciona?<br />DefaultModelBinderusareflectionpara saber quaispropriedadespúblicasestãoexpostasemtiposcomplexos<br />
  13. 13. Como ModelBinding Funciona?<br />View fortemente tipada?<br />
  14. 14. Particularidades do ModelBindind no ASP.NET MVC<br />
  15. 15. Escolhendo um Subconjunto de Propriedades <br />Evitar bind através de parâmetros na URL<br />
  16. 16. Invocando ModelBinding<br />Controle explicito<br />Instanciação dos objetos<br />Provedor de dados<br />Tratamento de erros<br />
  17. 17. Invocando ModelBinding<br />Instanciação dos Objetos<br />
  18. 18. Invocando ModelBinding<br />Provedor de Dados<br />
  19. 19. Invocando ModelBinding<br />Tratamento de Erros<br />Informaçãoenviadapelousuárionuncadeve ser descartada, mesmo se inválida<br />Quandoexistemmúltiploserros, o sistemadeveinformarsobretodoseles<br />Erros de bindnãodevem ser ignorados<br />
  20. 20. Invocando ModelBinding<br />Tratamento de Erros<br />Utiliza o objeto ModelState<br />Cada tentativa de bind armazena o nome da propriedade, o valor de entrada e os erros causados pela atribuição<br />
  21. 21. Invocando ModelBinding<br />Tratamento de Erros<br />
  22. 22. Invocando ModelBinding<br />Tratamento de Erros<br />
  23. 23. ModelBinding em Coleções<br />
  24. 24. ModelBinding em Coleções<br />
  25. 25. ModelBinding em Coleções<br />
  26. 26. Estendendo o sistema de ModelBinding do ASP.NET MVC<br />
  27. 27. Implementando IValueProvider<br />Permite fornecer dados extras ao sistema de ModelBinding do ASP.NET MVC<br />
  28. 28. Implementando IValueProvider<br />
  29. 29. Implementando IValueProvider<br />
  30. 30. Implementando IModelBinder<br />Permite configurar formas diferentes de mapear dados de entrada em tipos específicos<br />
  31. 31. Implementando IModelBinder<br />
  32. 32. Implementando IValueProvider<br />
  33. 33. E Finalmente....<br />
  34. 34. Fazendo Upload de Arquivos<br />
  35. 35. Fazendo Upload de Arquivos<br />
  36. 36. ASP.NET MVC ModelBinding<br />SharpShooters<br />Fernando Kakimoto<br />(@nandokakimoto)<br />

×