c# - 如何解决 C# - SQlite 提供程序问题
问题描述
我已经尝试了所有解决方案,但出现此错误;
System.NotSupportedException:'无法确定类型为'System.Data.SQLite.SQLiteFactory'的提供者工厂的提供者名称。确保在应用程序配置中安装或注册了 ADO.NET 提供程序。
我已经安装了所有的包和 dll。参考图片
和我的 App.config;
<configuration>
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<entityFramework>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="System.Data.SQLite.EF6" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6" />
<provider invariantName="System.Data.SQLite" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6" />
</providers>
</entityFramework>
<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" />
<remove invariant="System.Data.SQLite.EF6" />
<add name="SQLite Data Provider (Entity Framework 6)" invariant="System.Data.SQLite.EF6" description=".NET Framework Data Provider for SQLite (Entity Framework 6)" type="System.Data.SQLite.EF6.SQLiteProviderFactory, System.Data.SQLite.EF6" />
</DbProviderFactories>
</system.data>
<connectionStrings><add name="mainEntities" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SQLite.EF6;provider connection string="data source=C:\Users\MONS\Desktop\XmltoCsvBeta\XmltoCsvBeta\bin\Debug\Data\DB.db"" providerName="System.Data.EntityClient" /></connectionStrings></configuration> ```
解决方案
如果在运行时弹出错误,为什么选择它可能意味着System.Data.SQLite.Linq
项目引用中缺少包。System.Data.SQLite
包括对 LINQ 的支持,因此安装这个就足够了(而不仅仅是System.Data.SQLite.Core
)。
这至少对我有帮助。
推荐阅读
- python - 如何读取仅打印出包含整数的文本文件行的多行文本文件?
- string - postgresql 函数声明中的字符串形成失败
- javascript - 在这种情况下,为什么在 AJAX 发布后,URL 会重定向到带有 POST 参数(如 GET 参数)的 URL?
- mysql - mysql性能慢
- python - 为什么python帮助类将str类的子类解释为模块名?
- java - JSON 将数组与字符串数组结合以获得一个有凝聚力的名称值对
- r - 根据前一行对 r 中的行进行排序
- flutter - 状态不改变弹出菜单项颤动中的开关图块
- python - 枚举数据框列中的相等元素
- c - 直接将main的参数传递给编写函数