我一直試圖創建一個用戶和一個新的上下文來向 AspNetUsers 表添加字段。令我驚訝的是,當我認為我正確更改了代碼時,該錯誤表明我創建的上下文沒有服務。我目前已完成以下步驟:通過創建新上下文“jakformulaireContext”來添加所有 Razor 身份頁面。在 jakformularUser 中,我添加了我需要的所有字段。我刪除了現有的數據庫(已使用 ApplicationDbContext 自動生成)。我做了 jakformulaireContext 的遷移。我創建了一個更新數據庫,并在我的新數據庫中創建了這些字段。我還修改了 startup.cs 文件,這是修改后的代碼:services.AddDbContext<jakformulaireContext>(options => options.UseSqlServer( Configuration.GetConnectionString("jakformulaireContextConnection")));services.AddDefaultIdentity<jakformulaireUser>() .AddEntityFrameworkStores<jakformulaireContext>();我為此遵循了 Microsoft 教程,但是當我啟動該站點時,錯誤是這樣的:An unhandled exception occurred while processing the request.InvalidOperationException: No service for type 'Microsoft.AspNetCore.Identity.UserManager`1[jak.formulaire.Models.jakformulaireContext]' has been registered.Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(IServiceProvider provider, Type serviceType)Stack Query Cookies Headers
1 回答

RISEBY
TA貢獻1856條經驗 獲得超5個贊
錯誤消息表明它正在嘗試解析UserManager<jakformulaireContext>
,而用戶管理器實際上應該使用用戶實體作為其通用類型參數。所以類型應該是UserManager<jakformulaireUser>
.
對于面向開發人員的服務,例如UserManager
,RoleManager
或者SignInManager
您通常必須使用用戶類型作為類型參數,因此請確保您沒有在某處將用戶實體類型與數據庫上下文類型混為一談。
- 1 回答
- 0 關注
- 120 瀏覽
添加回答
舉報
0/150
提交
取消