gpt4 book ai didi

c# - 将区域文件夹中的页面设置为asp.net core 2.2 MVC中的默认页面

转载 作者:太空宇宙 更新时间:2023-11-03 12:02:05 25 4
gpt4 key购买 nike

我想将登录页面设置为默认页面。登录页面存在于区域文件夹中

下面是项目结构

enter image description here

我曾尝试在 Startup.cs 页面中设置默认路由,但无法设置下面是 starup.cs 的快照

 app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "identity/{controller=Account}/{action=Signin}");

routes.MapRoute(
name: "areaRoute",
template: "{area:exists}/{controller}/{action}"
);
});

每次我收到错误 404 错误无法找到确切的问题所在

Controller 代码:

    [Area("Identity")]
[Route("identity/[controller]")]
public class AccountController : BaseController
{
private readonly UserManager<ApplicationUser> _userManager;
private readonly SignInManager<ApplicationUser> _signInManager;


public AccountController(
UserManager<ApplicationUser> userManager,
SignInManager<ApplicationUser> signInManager
)
{
_userManager = userManager;
_signInManager = signInManager;
}


// GET: /Account/SignIn
[Route("[action]")]
[HttpGet]
[AllowAnonymous]
public async Task<IActionResult> SignIn(string returnUrl = null)
{
return View();
}
}

最佳答案

I want to set Login Page as Default page.Login page is present in Area Folder

最简单的方法是为areacontrolleraction配置默认值:

    app.UseMvc(routes =>    {        routes.MapRoute(            name: "default",            template: "identity/{controller=Account}/{action=Signin}");        
  
   routes.MapRoute(              name: "areaRoute",              template: "{area:exists}/{controller}/{action}"            );
          routes.MapRoute(            name: "areaRoute",            template: "{area=Identity}/{controller=Account}/{action=Signin}"        );    });

Controller code : Need to Remove Route parameter

    [Area("Identity")]        
public class AccountController : BaseController
{
private readonly UserManager<ApplicationUser> _userManager;
private readonly SignInManager<ApplicationUser> _signInManager;


public AccountController(
UserManager<ApplicationUser> userManager,
SignInManager<ApplicationUser> signInManager
)
{
_userManager = userManager;
_signInManager = signInManager;
}


// GET: /Account/SignIn
[HttpGet]
[AllowAnonymous]
public async Task<IActionResult> SignIn(string returnUrl = null)
{
return View();
}
}

关于c# - 将区域文件夹中的页面设置为asp.net core 2.2 MVC中的默认页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56665257/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com