Escolar Documentos
Profissional Documentos
Cultura Documentos
5
Publicado 26 de fevereiro de 2014 | Por |
Paulo Henrique Menezes 12 comentários
A Microsoft lançou recentemente o novo Framework Web Forms 4.5, que herdou
muitas features do asp.net MVC. Vou falar sobre 2 novas funcionalidades do
mesmo.
Vou criar uma aplicação bem simples para mostrar as novas funcionalidades.
Vou usar Visual Studio 2013 e Entity Framework 6. Você pode usar o visual studio
2012 e o EF anterior ao 6.
O Code First é desenvolver sem ter que abrir um designer ou definir um arquivo de
mapeamento XML Abordagem de “convenção sobre configuração” que permite a
persistência de banco de dados sem configurar nada explicitamente
Ele mapea nossas classes e transforma em tabelas do nosso banco de dados. Faz
isso de forma automática.
Primeiro, crie um novo projeto do tipo Web Forms com framework 4.5.
Dentro do projeto crie uma pasta chamada Model. Dentro dela, crie uma nova
classe chamada ClienteModel conforme a imagem a seguir:
Anotações:
Depois de ter criado a classe cliente, vamos criar o DbContext dentro da pasta
Model. Crie uma nova pasta chamada ExemploDbContext. Dentro da pasta crie uma
nova classe chamada DbContextExemplo.
A classe tem que herdar de DbContext. Ele vai gerar o nosso banco de dados de
forma automática. Dentro da classe temos um construtor chamando a classe base
de conexão. Esse nome exemplo, é o nome que dei ao nosso banco, é o nome da
connection string que fica no webConfig.
Você pode criar outra classe. Por exemplo, a classe endereço. Depois é adicionar
ela na classe DbContext: DbSet<Endereco> Endereços.
Dentro da pasta Model, crie uma classe chamada ClienteCrud. Você poderia criar
uma interface com os métodos, mas vou criar somente a classe. Crie a mesma
conforme a imagem abaixo:
Perceba que estou usando o Entry do Entity Framework. Ele obtém o objeto para a
entidade dada fornecendo acesso a informações sobre a entidade e a capacidade
de executar ações na entidade. Podemos manipular o estado da entidade. Então em
um único método, realizo o insert e o update. Temos também o método Delete que
é bem simples. O EntityState é um Enum criado pelo EF. Podemos observar a
facilidade que é usar Entity Framework.
Você pode usar essas variáveis fortemente tipadas nas expressões de ligação de
dados e obter todos os benefícios da experiência de desenvolvimento do Visual
Studio.
Na propriedade InsertMethod, foi criado o método para adicionar um novo cliente.
Dentro dele temos o método TryUpdateModel. Não esqueça de colocar ele, se não
vai dar error de validação. Faça conforme mostra a imagem abaixo no code behind
da pagina:
Nosso GridView também será fortemente tipado. Na imagem acima não colocamos
nada no page load para carregar o grid. Não é mais necessário. Crie um gridview
com 2 link buttons como mostra a imagem abaixo:
Perceba que ele também tem a propriedade ItemType para tornalo fortemente
tipado. Para carregar o gridview, não usamos mais o DataSource. Temos que criar
um método para carregar o mesmo. Na imagem acima, coloquei a propriedade
SelectMethod=”CarregarGrid”.
Nosso projeto rodando. Verifique se o seu projeto está igual ao da imagem abaixo:
Volte ao projeto e verifique que o banco de dados foi criado:
Vamos voltar ao nosso gridView e colocar um comando chamado OnRowCommand:
OnRowCommand=”gridDados_RowCommand”. Este evento ocorre quando um botão
é clicado em um controle gridView.
Adicionei um simples confirm do javascript. Se clicar em sim, ele vai excluir se não,
ele cancela. Muito simples.
Volte ao html. Vamos usar o AjaxControlToolkit para facilitar nossa vida. Mas você
pode usar jquery dialog.
Quando clicar em editar, vai abrir uma modal para alterar os dados.
Criei um panel e dentro dele coloquei outro como cabeçalho. Também os controles,
textbox e button para adicionar ou cancelar.
1 <style
type="text/css">
2 .modalPopup
{
3 background:
#FFFFFF;
4 }
5 </style>
Posts relacionados:
Postado em ASP.NET ,
C#,Visual Studio| Marcado como
ASP.NET,
ASP.NET MVC,
,
Code FirstCRUD ,
Data Annotations , ,
Entity Framework ,
Entity Framework 6Visual
,
Studio 2012 Visual Studio 2013,WebForm