Unable to determine the provider name for provider factory of type #39;System.Data.SQLite.SQLiteFactory#39;. with the Nuget package version 1.0.94.1(无法确定类型为“System.Data.SQLite.SQLiteFactory的提供程序工厂的提供程序名称.使用 Nuget 包版本 1.0.94.1) - IT屋-程序员软件开发技术分享社
问题描述
我在使用 SQLite 1.0.94.1 的 Nuget 包时遇到此错误.我摆弄了各种 app.config 部分,得到了关于这个包以前版本的类似问题的帮助,但我无法让它工作.下面是我在安装 Nuget 包后找到的 app.config.我在安装之前删除了 app.config.之后我只添加了连接字符串.
I am getting this error with the Nuget package for SQLite 1.0.94.1. I fiddled around with the various app.config sections, helped by similar questions about previous versions of this package, but I cannot get it to work. Below is the app.config as I found it after installing the Nuget package. I deleted the app.config prior to installing it. I only added the connectionstrings after that.
那么,问题出在哪里??
So, where is the problem??
<?xml version="1.0" encoding="utf-8"?>
<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>
<!--Added by me, the rest of the app.config was constructed by installing the SQLite package -->
<connectionStrings>
<add name="PrivateMessengerContext" connectionString="DataSource=|DataDirectory|PrivateMessengerDb.db" providerName="System.Data.SQLite.EF6"/>
<add name="PasswordContext" connectionString="DataSource=|DataDirectory|PasswordDb.db" providerName="System.Data.SQLite.EF6"/>
</connectionStrings>
<system.data>
<!--
NOTE: The extra "remove" element below is to prevent the design-time
support components within EF6 from selecting the legacy ADO.NET
provider for SQLite (i.e. the one without any EF6 support). It
appears to only consider the first ADO.NET provider in the list
within the resulting "app.config" or "web.config" file.
-->
<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" />
<remove invariant="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>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="mssqllocaldb" />
</parameters>
</defaultConnectionFactory>
<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" />
</providers>
</entityFramework>
</configuration>
推荐答案
再添加一个提供者
<provider invariantName="System.Data.SQLite" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6"/>
移动
下面
<remove invariant="System.Data.SQLite"/>
并将连接字符串中的提供程序名称更改为 providerName="System.Data.SQLite.
and change the provider name to providerName="System.Data.SQLite in your connection string.
编辑:另见 http://system.data.sqlite.org/index.html/tktview/2be4298631c01be99475
这篇关于无法确定类型为“System.Data.SQLite.SQLiteFactory"的提供程序工厂的提供程序名称.使用 Nuget 包版本 1.0.94.1的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:无法确定类型为“System.Data.SQLite.SQLiteFactory"的提供程序工厂的提供程序名称.使用 Nuget 包版本 1.0.94.1
基础教程推荐
- Azure Functions:CosmosDBTrigger 未在 Visual Studio 中触发 2022-01-01
- Moq It.Is<>不匹配 2022-01-01
- 禁止输入少量字符,例如'<'、'&a 2022-01-01
- 我应该在后面的代码中直接使用 Linq To SQL 还是使 2022-01-01
- 当值可以是对象或空数组时反序列化 JSON 2022-01-01
- 如何使用 .Net 检查 Active Directory 服务器是否已启动并正在运行? 2022-01-01
- WPF 模态进度窗口 2022-01-01
- 如果有人提交恶意软件Nuget包怎么办? 2022-01-01
- .NET SerialPort DataReceived 事件未触发 2022-01-01
- C# 从 List<List<int>> 中删除重 2022-01-01
