Entity Framework 6 Code First

Resolvi escrever esse post sobre code first com o Entity Framework pois faz um tempo que trabalho com o EF, porém nunca dei a atenção devida a ele. Em meus projetos pessoais ou estudos, sempre dei prioridade ao NHibernate, porém, como praticamente em todos os projetos que tenho trabalhado utilizam o EF, resolvi falar um pouco sobre ele.

O Entity Framework Code First é uma maneira de você se preocupar primeiramente com o seu domínio, modelando as suas classes, etc. e depois delegar ao EF que monte o banco de dados para você. Para isso você poderá seguir por dois caminhos. O primeiro é o Data Annotation, onde dentro da sua classe, você irá anotar a sua classe e suas propriedades através de Annotations indicando nomes de tabela, nomes das colunas, índices, FK, PK, etc. Eu particularmente não gosto muito de trabalhar desta maneira pois eu acho que ele deixa a classe menos legível. A partir dai vamos para a segunda opção, que é utilizarmos o fluent api para realizar nossos mapeamentos (quando necessário). Vamos ver um exemplo da diferença entre utilizar dataannotation e fluent api.

Continuar lendo

ASP.NET MVC sem utilizar o Entity Framework

Para quem geralmente está procurando sobre asp.net mvc, quer começar a estudar, etc. sempre acaba caindo em tutoriais que utilizam o Entity Framework. A primeira vista, pode ser besteira pensar em não utilizar o entity framework, porém eu acredito que ele acaba complicando um pouco o inicio dos estudos para quem nunca viu nada a respeito. Existe também quem quer trabalhar com algum banco de dados que não possui um suporte legal com o EF e/ou simplesmente prefere utilizar outra solução, como o nhibernate, etc. Para essas pessoas que estão começando com o asp.net mvc e querem ver como ele funciona sem o EF, aqui segue um exemplo simples 😉

Caso você não tenha o asp.net mvc instalado, você precisará instalar. É bem simples, basta entrar no site http://www.asp.net/mvc e baixar a versão desejada.

Para criar um novo projeto, basta ir em: File -> New Project -> ASP.NET MVC 3 Web Application

projeto mvc

Continuar lendo