Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何修复:';IDataProtectionBuilder';不包含';persistenkeystdbcontext';而且没有可访问的分机_C#_.net Core_Entity Framework Core - Fatal编程技术网

C# 如何修复:';IDataProtectionBuilder';不包含';persistenkeystdbcontext';而且没有可访问的分机

C# 如何修复:';IDataProtectionBuilder';不包含';persistenkeystdbcontext';而且没有可访问的分机,c#,.net-core,entity-framework-core,C#,.net Core,Entity Framework Core,我正在尝试使用services.AddDataProtection()中的PersistKeysdbContext扩展将密钥持久化到SQL。目前,我们正在使用PersistKeystackExchangeDis,它工作得非常好,但是需要将它移到DB中 我们正在使用添加了以下参考的.net Core 2.2项目: Microsoft.AspNetCore.DataProtection.EntityFrameworkCore(2.2.0) Microsoft.AspNetCore.DataProte

我正在尝试使用services.AddDataProtection()中的PersistKeysdbContext扩展将密钥持久化到SQL。目前,我们正在使用PersistKeystackExchangeDis,它工作得非常好,但是需要将它移到DB中

我们正在使用添加了以下参考的.net Core 2.2项目:

Microsoft.AspNetCore.DataProtection.EntityFrameworkCore(2.2.0) Microsoft.AspNetCore.DataProtection.Extensions(2.2.0) Microsoft.AspNetCore.DataProtection.StackExchangeRedis(2.2.0)(显然适用于当前功能)

Microsoft.EntityFrameworkCore(2.2.0)

services.AddDataProtection().PersistKeysdbContext();
我从编译器中得到以下错误:

“IDataProtectionBuilder”不包含“PersistKeysDbContext”的定义,并且找不到接受“IDataProtectionBuilder”类型的第一个参数的可访问扩展方法“PersistKeysDbContext”(是否缺少using指令或程序集引用?)

1)确保已安装Microsoft.AspNetCore.DataProtection.Extensions+Microsoft.AspNetCore.DataProtection.EntityFrameworkCore(作为参考)

2) 使用Microsoft.AspNetCore.DataProtection添加
到Startup.cs(或任何有问题的地方)


我已经测试过,它可以工作,因此如果它仍然不能工作,您可能需要确保没有遗漏任何内容。

如果您想引用nuget软件包Microsoft.AspNetCore.DataProtection.EntityFrameworkCore,请注意该核心而不是.net Framework抱歉-我有该引用。我省略了问题中的“核心”部分。我已经更新了这个问题。你能发布包括using语句在内的整个启动代码吗?如果你能提供nuget文件内容,那会有帮助的
services.AddDataProtection().PersistKeysToDbContext<ApplicationDbContext>();