求救呀,高手!!!
使用Winform+ .net4.2 + EF4 + Sqlite3(System.data.Sqlite.dll) 开发端运行正常,通过Installer制作发布到客户端后均不能访问,主要是找不到sqlite。
已经尝试网上各种方法:
1、app.config中添加
<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, Version=1.0.81.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139" /> </DbProviderFactories> </system.data>
2、使用gacutil -i 注册 System.Data.Sqlite.Dll 和 System.data.sqlite.linq.dll
3、在Install项目中添加 System.Data.Sqlite.Dll引用
以上方式均不可行,客户端包括WIN7和XP,均失败。实在无语了,是不是EF4根本不适合sqlite呀?可它明明提供 Sqlite Provider的呀!而且在开发端总是正常的。
错误信息有:
(1)指定的存储区提供程序在配置中找不到,或者无效。。
(2)找不到或无法加载已注册的 .net Framework Data Provider 。。
湖上湖