Entity
Framework - Usando o Entity Framework Profiler
O EFProfiler é mais uma ferramenta que permite verificar se os comandos SQL gerados pelo seu código usando o Entity Framework estão otimizados.
Para usar a ferramenta basta baixar o pacote no site: www.efprof.com
Após isso descompacte e instale a ferramenta em uma pasta no seu computador.
As instruções estão em um arquivo texto chamado How to use.txt que eu traduzi bem rapidinho e que transcrevo a seguir:
Preparando
um aplicativo para ser analisado pelo EFProfiler =================================================== # Adicione uma referência para a dll appender Se você está usando. NET 4.0, você deverá adicionar uma referência para HibernatingRhinos.Profiler.Appender.v4.0.dll, que está localizado no zip para download. Se você está usando o Framework 3.5, deve adicionar uma referência para o assembly HibernatingRhinos.Profiler.Appender.dll # Chamando o profiler do seu codigo Na inicialização do aplicativo (Application_Start em aplicações web, Program.Main em aplicações Windows/Console ou no construtor App para aplicativos WPF), faça a seguinte chamada: HibernatingRhinos.Profiler.Appender.EntityFramework.EntityFrameworkProfiler.Initialize (); Traçando o perfil do aplicativo ===================== Abra o EFProf.exe Comece a usar o aplicativo que você deseja analisar Você deve ver imediatamente os resultados na interface do usuário. notas ===== Isto irá funcionar apenas para análises feitas na máquina atual, você pode traçar o perfil de uma máquina remota, passando o nome do host para a chamda Initialize() Para quaisquer questões , por favor, informe-nos para na lista de discussão apoio: http://groups.google.com/group/efprof |
Então após baixar o pacote do EFProfiler vamos criar um projeto do tipo Console Application usando a linguagem Visual Basic no Visual Studio 2012 Express:
No menu Project clique em New Project e selecione o template conforme a figura abaixo:
![]() |
Agora vamos incluir uma referência a biblioteca do EFProfiler. No menu Project selecione Add Reference;
Clique no botão Browser e localize o arquivo HibernatingRhinos.Profiler.Appender.v4.0.dll e clique no botão Add;
![]() |
Agora vamos criar um Entity Data Model para acessar a tabela Customer do banco de dados Northwind.mdf;
No menu Project clique em Add New Item e a seguir selecione Data->ADO .NET Entity Data Model e informe o nome Northwind.edmx e clique em Add;
![]() |
Selecione a opção Generate from Database;
A seguir selecione a conexão com o Northwind e aceite os valores padrões;
![]() |
Selecione a tabela Customers e clique no botão Finish;
![]() |
Pronto temos a entidade Customer gerada pelo ORM Entity Framework que iremos usar no projeto;
![]() |
Agora vamos realizar uma consulta ao EDM e verificar seu desempenho usando o EFProfiler.
Digite o código abaixo no arquivo Module1.vb
Module
Module1 Sub Main() ' Referencia ao EF Profiler HibernatingRhinos.Profiler.Appender.EntityFramework.EntityFrameworkProfiler.Initialize() Dim ctx As New NorthwindEntities1() Dim consulta = From c In ctx.Customers Select c For Each linha In consulta Console.WriteLine(linha.ContactName) Console.WriteLine(linha.Address) Next Console.ReadKey() End Sub End Module |
Atenção !!
Agora abra a aplicação EFProfiler clicando no aplicativo EFProf na pasta onde você descompactou o pacote do utilitário.
Em seguida rode a sua aplicação.
A saída no Console irá exibir o nome do contato e o endereço:
![]() |
E você verá os resultados na tela do EFProfiler podendo extrair muitas informações sobre o desempenho do SQL gerado:
![]() |
![]() |
Esta ferramenta é trial por 30 dias e solicita o registro e a conexão com o servidor remoto.
Cabe a você decidir se vale a pena usar a ferramenta no seu projeto e se isso vale preço cobrado pela licença.
Pegue o projeto (sem os
pacotes) aqui:
UsandoEFProfiler.zip
1Pe 1:3
Bendito seja o Deus e Pai de nosso Senhor Jesus Cristo, que, segundo a sua grande misericórdia, nos regenerou para uma viva esperança, pela ressurreição de Jesus Cristo dentre os mortos,1Pe 1:4
para uma herança incorruptível, incontaminável e imarcescível, reservada nos céus para vós,1Pe 1:5
que pelo poder de Deus sois guardados, mediante a fé, para a salvação que está preparada para se revelar no último tempo;Referências: