实体框架核心 - PersistKeysToDbContext mysql 问题

时间:2021-07-01 15:32:09

标签: mysql entity-framework-core


使用 Entity Framework Core 我想 PersistKeysToDbContext。 我在 startup.cs 中的代码
 services.AddDbContext<DataProtectionKeysContext>(options =>
                    options.UseMySql(this.Configuration.GetMySQLConnectionString("ConnectionOptions:XXX")))
                .AddDataProtection()
                .PersistKeysToDbContext<DataProtectionKeysContext>();

在运行时我收到以下异常
尝试加密提供的数据时出错。有关详细信息,请参阅内部异常。
异常源是 Microsoft.AspNetCore.DataProtection
内部异常是:对象引用未设置为对象的实例。
堆栈跟踪是
在 Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.Protect(Byte[] 明文) 在 Microsoft.AspNetCore.Authentication.SecureDataFormat1.Protect(TData data, String purpose) at Microsoft.AspNetCore.Authentication.SecureDataFormat1.Protect(TData 数据) 在 Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.WriteNonceCookie(String nonce) 在 Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.d__19.MoveNext() 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.GetResult() 在 Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.d__18.MoveNext() 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.GetResult() 在 Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.d__54.MoveNext() 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.GetResult() 在 Microsoft.AspNetCore.Authentication.AuthenticationService.d__14.MoveNext() 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.GetResult() 在 Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.d__5.MoveNext() 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.GetResult() 在 E:\project\QQQ\Development\Sites\QQQ.WebApplication\Startup.cs:line 420 中的 QQQ.WebApplication.Startup.<>c.d.MoveNext() 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.GetResult() 在 Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.d__6.MoveNext() 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.GetResult() 在 XXX.Core.Middleware.SecurityHeaders.SecurityHeadersMiddleware.d__3.MoveNext() 在 E:\project\QQQ\Development\Common\XXX.Core\Middleware\SecurityHeaders\SecurityHeadersMiddleware.cs:line 62 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 System.Runtime.CompilerServices.TaskAwaiter.GetResult() 在 XXX.Core.Middleware.ExceptionMiddleware.d__3.MoveNext() 在 E:\project\QQQ\Development\Common\XXX.Core\Middleware\ExceptionMiddleware.cs:line 51

0 个答案:

没有答案