2009-12-09 64 views
2

我使用SQLite和從http://sqlite.phxsoftware.com/包裝,當我添加一個數據源到我的項目,我得到的錯誤:C#無法找到或加載註冊.NET數據提供程序錯誤

「一些更新命令不能自動生成,數據庫返回到以下錯誤:無法找到或加載已註冊.Net Framework數據提供程序「

我有最新的.Net服務包,我已卸載並重新安裝SQLite軟件。我也看了其他地方這表明這個項目不是在machine.config文件:

<add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite, Version=1.0.27.1, Culture=neutral, PublicKeyToken=db937bc2d44ff139"/> 

當我看着我甚至沒有發現在C machine.config文件:\ WINDOWS \ Microsoft.NET \ Framework \ v3.5文件夾,但我確實在C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727

中找到一個有沒有人有任何想法是怎麼回事?我是否需要卸載整個.Net Framework,然後安裝3.5版才能讓這個錯誤消失?

任何幫助,將不勝感激。

謝謝。

回答

6

您可以在應用程序中添加對System.Data.SQLite的直接引用並實例化SQLiteFactory嗎?

我們直接在我們的應用程序的bin導向器(不是GAC)中使用SQLite,並在我們的Web/App.config中包含此行,因此我們不依賴於Machine.config(簡化了部署)。

<system.data> 
    <DbProviderFactories> 
     <add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite"/> 
    </DbProviderFactories> 
</system.data> 
0

我假設您使用VS 2008.檢查您正在構建的Framework版本。

1

你並不需要視覺C++ 2010這也可能發生... !!! 只複製 「msvcr100.dll」 在發行文件夾...

的 「System.Data.SQLite.dll」 需要 「msvcr100.dll」

相關問題