C# Html.ActionLink显示页面i';我已经在.NETCore2.2中了
我最近从.NET Core 2.1迁移到.NET Core 2.2,除了@Html.ActionLink之外,一切都很顺利 我在我的_LoginPartial.cshtml中有2@Html.ActionLink,一个在注册页面上(我自己做的),一个在登录页面上(由Microsoft使用Identity stuff创建) 如果我点击“注册”,一切正常,它会将我从注册控制器带到注册页面。 但我点击“登录”,它让我保持在同一个页面上,url也是我已经在的页面。 如果我手动浏览,我可以进入登录页面。 我猜是我的路线,但我没有改变它,所以我有点迷路C# Html.ActionLink显示页面i';我已经在.NETCore2.2中了,c#,asp.net,.net,model-view-controller,C#,Asp.net,.net,Model View Controller,我最近从.NET Core 2.1迁移到.NET Core 2.2,除了@Html.ActionLink之外,一切都很顺利 我在我的_LoginPartial.cshtml中有2@Html.ActionLink,一个在注册页面上(我自己做的),一个在登录页面上(由Microsoft使用Identity stuff创建) 如果我点击“注册”,一切正常,它会将我从注册控制器带到注册页面。 但我点击“登录”,它让我保持在同一个页面上,url也是我已经在的页面。 如果我手动浏览,我可以进入登录页面。 我
<ul class="nav navbar-nav navbar-right ml-auto mt-1">
<li class="nav-item" id="Register" style="padding-right:20px;">
@Html.ActionLink("Register", "Index", "Register", null, new { @style = "color:white" })
</li>
<li class="nav-item" id="Login">
@Html.ActionLink("Login", "/Account/Login", "Identity", null, new { @style = "color:white" })
</li>
<li class="nav-item" id="Login">
@Html.ActionLink("Login", "Account", "Identity", null, new { @style = "color:white" })
</li>
</ul>
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
-
@ActionLink(“Register”、“Index”、“Register”、null、new{@style=“color:white”})
-
@ActionLink(“Login”,“/Account/Login”,“Identity”,null,新的{@style=“color:white”})
-
@ActionLink(“Login”、“Account”、“Identity”、null、new{@style=“color:white”})
app.UseMvc(路由=>
{
routes.MapRoute(
名称:“默认”,
模板:“{controller=Home}/{action=Index}/{id?}”);
});
我无法理解您的代码。
基本上:
ActionLink采用以下三个第一个参数:
string:Text
string:ActionName
string:ControllerName
在第一个链接中,您指的是索引页,控制器名称是Register。听起来不对
然后,您有两个操作链接,假设它们指向同一页面,但有一个错误,您编写了/Account/Login
,它不是操作名称。它看起来像一条路线
<li class="nav-item" id="Login">
@Html.ActionLink("Login", "Login", "Account", null, new { @style = "color:white" })
</li>
@ActionLink(“Login”、“Login”、“Account”、null、new{@style=“color:white”})
它不是/Account/Login
,而是Login
。我认为控制器的名称是Account
我认为您在所有操作链接中都犯了相同的错误,因此请务必更正操作名称和控制器名称。对于寄存器部分,我有一个名为Register的控制器,它必须转到此控制器的Index方法,因此它是正确的。对于登录部分,我正在尝试访问Microsoft提供的身份登录。它以前工作过,这就是我不明白的。您可以看到登录时有两种不同的ActionLink,这只是因为我做了一些测试:-)最好正确命名,以便于修改/阅读,但这不是问题所在。你登录的控制器名是什么?它从Identity/Account/Identity登录是一个API,控制器名应该是Account?不,我不这么认为。这是我正在尝试访问的url: