我使用Identity作为UI来生成我的登录页面,
我的index.cshtml看起来像这样:
@page
@model IndexModel
@{
ViewData["Title"] = "Home page";
}
@inject SignInManager<IdentityUser> SignInManager
@if (SignInManager.IsSignedIn(User)) {
... my html ...
}
当用户未登录时,这会在右上方显示一个“登录”按钮,该按钮重定向到登录页面,我看到该按钮具有
<a class="nav-link text-dark" href="/VoyDashIdentity/Account/Login">Login</a>
我希望索引页面显示登录页面(或嵌入登录页面),如果用户无需单击登录按钮即可登录,我尝试过:
@if (SignInManager.IsSignedIn(User)) {
... my html ...
} else {
Response.Redirect("VoyDash/Identity/Account/Login");
}
但这无法正确重定向到该区域,所有相对链接(即bootstrap.css的链接)均无法正常工作。
实现此目标的最佳方法是什么?
答案 0 :(得分:1)
默认情况下,它将在脚手架后将用户重定向到新的登录页面。但是您始终可以使用以下方式更改路径:
$("input").removeAttr('disabled');
请确保上面的配置位于services.PostConfigure<CookieAuthenticationOptions>(IdentityConstants.ApplicationScheme,
opt => {
//configure your other properties
opt.LoginPath = "/Login";
});
下,否则AddDefaultIdentity
将覆盖该配置。