我开发了一个运行良好但又希望添加对SQLite数据库的访问权限的Windows服务。我在windows服务中开发了一个数据管理器项目来添加SQLite数据处理。这是使用VS2015开发的。
实体框架方面运作良好,并构建了SQLite数据库的模型,服务将正常启动和运行。与数据库的连接也有效,但是当尝试运行查询时,我收到以下错误:
"指定的架构无效。错误: Video.ssdl(2,2):错误0152:找不到具有不变名称' System.Data.SQLite.EF6'的ADO.NET提供程序的实体框架提供程序。确保提供商已在' entityFramework'中注册。应用程序配置文件的一部分。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkId=260882。"
问题在于,当我将配置和实体框架部分添加到配置文件时,服务不会启动,从而产生以下错误:
"由于以下错误,Media Sync Service服务无法启动: 该服务未及时响应启动或控制请求。"
以下是配置和实体框架部分:
<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>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="System.Data.SQLite" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6, Version=1.0.101.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139" />
<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>
还有其他人有这个问题吗?对于如何解决这个问题,我将非常感激。