2

Passé une bonne partie de la journée en passant par SO pour cela. Voici la configurationComment faire fonctionner MVC-mini-profiler sur EF 4.1 Base de données d'abord

  • MVC 3 App utilisant le modèle Repository avec 3 référentiels dans 2 bases de données.
  • EF 4.1 Base de données utilisant d'abord le DBContext API pour les deux connexions db.
  • installé mvc-mini-profileur de NuGet

Voilà comment je crée mon Db Contexte dans le référentiel

public class TransactionRepository : BaseRepository, ITransactionRepository 
{ 
    AccountingEntities _db = new AccountingEntities(); 

    // repository methods 
} 

Ensuite, dans les contrôleurs

public class InvoiceController : BaseController 
{ 
    private ITransactionRepository _txnRepository; 

    public InvoiceController() 
    { 
     _txnRepository = new TransactionRepository(); 
    } 

    public InvoiceController(ITransactionRepository t) 
    { 
     _txnRepository = t; 
    } 
} 

Enfin, j'ai ajouté à web.config

<system.data> 
    <DbProviderFactories> 
     <remove invariant="MvcMiniProfiler.Data.ProfiledDbProvider" /> 
     <add name="MvcMiniProfiler.Data.ProfiledDbProvider" invariant="MvcMiniProfiler.Data.ProfiledDbProvider" description="MvcMiniProfiler.Data.ProfiledDbProvider" type="MvcMiniProfiler.Data.ProfiledDbProviderFactory, MvcMiniProfiler, Version=1.8.0.0, Culture=neutral, PublicKeyToken=b44f9351044011a3" /> 
    </DbProviderFactories> 
    </system.data> 

Quelles sont les prochaines étapes pour profiler ces connexions? Marcher lentement car c'est ma première exposition à Entity Framework, donc supposons très peu de détails sur la connexion EF/contexte.

Répondre

5

J'ai réécrit le code d'interception afin qu'il soit beaucoup plus robuste.

  1. NuGet MiniProfiler.EF (version 1.9.1)
  2. Pendant App course Init: MiniProfilerEF.Initialize();
+0

Merci Sam, beaucoup moins les cheveux tirant avec 1.9.1. Bonne mise à jour. – RyanW

+0

Je voulais juste ajouter que, avec l'ajout du paquet MiniProfiler.MVC3 nuget, même cela n'est pas nécessaire. Installez simplement le package MiniProfiler.MVC3 dans votre projet MVC3, décommentez l'appel MiniProfilerEF.Initialize() dans App_Start \ MiniProfiler.cs et consultez l'exemple de fichier de disposition qui est automatiquement ajouté pour obtenir des conseils sur la modification de votre propre. –

Questions connexes