我在更改ASP.Net Core Web应用程序的默认路由时遇到了麻烦。我已将默认路由更改为其他页面,但仍将我重定向到上一页。以下是我的代码段供参考:
Startup.cs
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Home/Error");
// The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseSession();
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapRazorPages();
endpoints.MapControllers();
});
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Main}"); //I had changed this but still redirect me Login
});
}
HomeController.cs
public class HomeController : Controller
{
public IActionResult Login()
{
return View();
}
[SessionTimeout]
public IActionResult Main()
{
return View();
}
}
如您所见,我的控制器中有2个动作。以前,我使用登录作为默认路由。现在,我希望默认路由为 Main 。但是它仍然将我重定向到登录。我也曾尝试更改 launchUrl ,但仍然无法解决此问题。
非常感谢您的帮助。预先感谢。
答案 0 :(得分:0)
可能是因为使用了SessionTimeoutAttribute。 请尝试对其进行评论,如果问题得到解决,请检查SessionTimeoutAttribute是否已将操作重定向到“登录”,然后将其更改为“主要”。