我在C#上编写程序,并希望将任何数据存储在数据库中。我想使用不需要在客户端计算机上进行任何额外安装的数据库
我选择了SQLite和Entity框架
我写了一个简单的测试项目,打开db并写入任何行只是为了检查所有工作是否正常
对于项目引用集中的System.data.Sqlite - 复制到输出文件夹,在客户端机器上编译并运行它 - 并获得异常:
System.ArgumentException
"The specified store provider cannot be found in the configuration, or is not valid."
我尝试在配置文件中添加提供程序设置:
<system.data>
<DbProviderFactories>
<remove invariant="System.Data.SQLite"/>
<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.ProviderIncompatibleException
A null was returned after calling the 'GetService' method on a store provider instance of type 'System.Data.SQLite.SQLiteFactory'. The store provider might not be functioning correctly.
我做错了什么?可以使用sqlite +实体框架而无需任何额外的安装,但.net 4.0。
我在我的机器上使用安装了net 4.0的Windows 7 64x和在客户机中安装了net 4.0的Windows 7 32x
我很乐意提供任何帮助