Skip to content

Instantly share code, notes, and snippets.

@jpolvora
Created November 9, 2011 00:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jpolvora/1349804 to your computer and use it in GitHub Desktop.
Save jpolvora/1349804 to your computer and use it in GitHub Desktop.
public void DemonstrarEntityFramework()
{
var dbContext = new MyEntities(); //instancia um dbContext
var uow = new CodeFirstUnitOfWork(dbContext); //instancia um unit_of_work para coordenar repositórios
var repositorioPessoas = new Repositorio<Pessoa>(uow); //cria um novo repositório passando o unitOfWork
var repositorioEnderecos = new Repositorio<Endereco>(uow);//cria um novo repositório passando o unitOfWork
var novaPessoa = repositorioPessoas.CreateNew(); //fabrica uma nova entidade
novaPessoa.Nome = "Jone Polvora"; //seta o valor do campo Nome
novaPessoa.Data = DateTime.Now; //seta o valor do campo Data
var novoEndereco = repositorioEnderecos.CreateNew(); //fabrica uma nova entidade
novoEndereco.Rua = "Rua Afonso Pena"; //seta o valor do campo Rua
novaPessoa.Enderecos.Add(novoEndereco); //adiciona o endereço na coleção de endereços da pessoa
uow.Commit(); //comita as duas entidades
Func<Pessoa, bool> filtro = p => p.Nome.Contains("Jone"); //estabelece um filtro (especificação)
var result = repositorioPessoas.GetEntity(filtro); // busca no banco de dados registros que satisfazem o filtro
Assert.IsTrue(result != null); //asserção verificando que retornou resultados
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment