Microsoft身份验证注销不起作用
发布时间:2023-02-17 08:56:59 所属栏目:asp.Net 来源:互联网
导读:如何解决Microsoft身份验证注销不起作用? 战斗了2天...现在需要帮助。 我正在使用Visual Studio 2019中的Razor Pages使用ASP.NET Core 3.1进行项目。该项目具有本地帐户,能够注册其他外部帐户,例如Microsoft,Facebook等。我关注了有关Microsoft文档的教
public logoutModel(SignInManager<IdentityUser> signInManager,ILogger<logoutModel> logger) { _signInManager = signInManager; _logger = logger; } public void OnGet() { } public async Task<IActionResult> OnPost(string returnUrl = null) { await _signInManager.SignOutAsync(); _logger.Loginformation("User logged out."); if (returnUrl != null) { return LocalRedirect(returnUrl); } else { return RedirectToPage(); } } } } _LoginPartial.cshtml @using Microsoft.AspNetCore.Identity @inject SignInManager<IdentityUser> SignInManager @inject UserManager<IdentityUser> UserManager <ul class="navbar-nav"> @if (SignInManager.IsSignedIn(User)) { <li class="nav-item"> <a class="nav-link text-dark" asp-area="Identity" asp-page="/Account/Manage/Index" title="Manage">Hello @User.Identity.Name!</a> </li> <li class="nav-item"> <form class="form-inline" asp-area="Identity" asp-page="/Account/logout" asp-route-returnUrl="@Url.Page("/",new { area = "" })" method="post" > <button type="submit" class="nav-link btn btn-link text-dark">logout</button> </form> </li> } else { <li class="nav-item"> <a class="nav-link text-dark" asp-area="Identity" asp-page="/Account/Register">Register</a> </li> <li class="nav-item"> <a class="nav-link text-dark" asp-area="Identity" asp-page="/Account/Login">Login</a> </li> } </ul> 解决方法 代替在_LoginPartial.cshtml中使用@if (SignInManager.IsSignedIn(User)),将其更改为_signInManager,这是注入字段。 SignInManager是注入的类。 , 看看这些 http://www.binaryintellect.net/articles/3d6ce8b3-cb62-42b7-bedc-5e7f2fb9d017.aspx http://docs.identityserver.io/en/latest/topics/signout_external_providers.html 看来退出外部用户是您的责任... public IActionResult SignOut(string signOutType) { if (signOutType == "app") { HttpContext.SignOutAsync().Wait(); } if (signOutType == "all") { return Redirect("https://login.microsoftonline.com/common/oauth2/v2.0/logout"); } return RedirectToAction("Index"); } (编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- ASP.NET:预编译文件的文件名生成规则
- .net – CS0012:类型’System.Data.Linq.DataCo
- asp.net web.config加密解密方法
- asp.net-core – 如何在Visual Studio 2015 RC中
- asp.net-mvc – ASP.NET MVC会话超时,绝对还是滑
- asp.net – 如何在南希显示我的404页面?
- ASP.NET MVC Web应用程序中视图逻辑和域逻辑之间
- .net – 加密ApplicationServices ConnectionStr
- asp.net – Oracle.ManagedDataAccess:TNS:无法
- asp.net-mvc – 为什么我的视图模型中的内部成员
热点阅读