DbContextOptionsBuilder 不包含“UseSqlite”的定义

问题描述 投票:0回答:3

尝试在我的应用程序中使用 SQLite 时,Dotnet Core Web API 会抛出异常

DbContextOptionsBuilder'不包含'UseSqlite'的定义,并且没有可访问的扩展方法'UseSqlite'

如何解决这个问题?

我尝试过使用.Microsoft.EntityFrameworkCore;

使用 Microsoft.EntityFrameworkCore;

asp.net dbcontext
3个回答
22
投票

我通过添加 SQLite 包解决了这个问题。

在你的启动文件中使用这个

using Microsoft.EntityFrameworkCore;

在您的项目文件中使用此

<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="2.1.1"/>

然后你就可以使用SQLite了

services.AddDbContext<DataContext>(x => 
    x.UseSqlite(Configuration.GetConnectionString("DefaultConnection")));

12
投票

如果出现此错误,您可能忘记安装 Microsoft.EntityFrameworkCore.Sqlite

在 Visual Studio 中,转到 工具 > NuGet 包管理器 > 包管理器控制台并输入:

Install-Package Microsoft.EntityFrameworkCore.Sqlite

或者,如果您使用 .NET CLI,请在 shell 中输入以下内容:

dotnet add package Microsoft.EntityFrameworkCore.Sqlite

此命令还会将相应的

<PackageReference ..>
标签添加到项目文件中,如 RedWan 提到的。


0
投票

我在我的 UnitTest 项目中遇到了同样的问题,安装此包后解决了:

Microsoft.EntityFrameworkCore.Sqlite.Core
© www.soinside.com 2019 - 2024. All rights reserved.