2011-09-02 52 views
4

我正在使用mvc-mini-profiler的實體框架。從mvc-mini-profiler 1.7升級到版本1.9和solving some issues後,我設法編譯了我的項目。現在,我得到以下運行時異常:「無法確定提供者名稱」錯誤與mvc-mini-profiler 1.9

Unable to determine the provider name for connection of type 'MvcMiniProfiler.Data.EFProfiledDbConnection'

我想這個問題可能與配置的數據庫供應商的工廠有關,因爲我有同樣的問題與1.7版本,並通過添加以下到我的.config解決它文件:

<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.7.0.0, Culture=neutral, PublicKeyToken=b44f9351044011a3" /> 
</DbProviderFactories> 

現在我試着用下面的更換之上,但我仍然得到錯誤:

<DbProviderFactories> 
    <remove invariant="MvcMiniProfiler.Data.ProfiledDbProvider" /> 
    <add name="MvcMiniProfiler.Data.ProfiledDbProvider" 
     invariant="MvcMiniProfiler.Data.ProfiledDbProvider" 
     description="MvcMiniProfiler.Data.ProfiledDbProvider" 
     type="MvcMiniProfiler.Data.EFProfiledDbProviderFactory`1, MvcMiniProfiler.EntityFramework, Version=1.9.1.0, Culture=neutral, PublicKeyToken=b44f9351044011a3" /> 
</DbProviderFactories> 

什麼是正確的配置SOLV這個問題?

回答

4

您是否嘗試從.config中刪除DbProviderFactories?

你有初始化嗎?

protected void Application_Start() 
{ 
    ....other code 

    MiniProfilerEF.Initialize(); 
} 

隨着1.9,我剛剛添加了初始化在開始,並刪除配置部分,現在我有SQL與EF分析。

+0

工作,謝謝。解決這個問題後,我發現加載mini-profiler-includes時出錯。我在Application_AuthenticateRequest事件中有代碼訪問數據庫,並且代碼導致分析器拋出NullReferenceException。我不得不添加代碼來檢查請求是否針對跳過數據庫訪問的mini-profiler-includes。*。這是正常的行爲嗎? 1.7版本沒有這個問題。 –

+0

對不起,我只在一個正在訪問控制器方法中的數據庫的應用程序中嘗試過剖析器,沒有更高的級別,所以我沒有看到。感謝接受,很高興它的工作(sorta)。 – RyanW

相關問題