当我使用rsync -a provisioner /
身份验证创建ASP.NET Core Web项目时,我注意到VS2015创建了一个包含许多操作方法的Individual User Accounts
。这些操作方法中的大多数都包含输入可选参数AccountController
,并且在这些方法中我们已经string returnUrl = null
,如下面的一个示例所示。
问题:
ViewData["ReturnUrl"] = returnUrl;
在这些操作方法中的用途是什么? 2.我什么时候应该在动作方法中使用它们以及何时应该避免使用它们?获取方法:
ViewData["ReturnUrl"] = returnUrl;
发布方法:
[HttpGet]
[AllowAnonymous]
public IActionResult Login(string returnUrl = null)
{
ViewData["ReturnUrl"] = returnUrl;
return View();
}
答案 0 :(得分:4)
当您想要将用户返回到他最初想要访问的页面时,您需要将返回的网址传递给您的视图。
您可以使用ViewData或模型的常规属性来执行此操作。
所以你通过了回归,只是因为你不想忘记"用户来自哪里。
答案 1 :(得分:3)
当您访问需要授权的网站时,您需要将用户返回到他们经过身份验证后最初访问的页面。这将保存返回URL,以便可以将其用于将用户重定向回其原始页面(而不是像主页一样的默认页面)。如果您希望用户在登录后始终转到默认页面,则可以将其删除。您需要将默认页面重定向放在适当的位置。
答案 2 :(得分:3)
您可以像这样
解析视图上的returnUrl<form asp-controller="Account" asp-action="Login" asp-route-returnurl="@viewdata["ReturnUrl"]" method="post" class="form-horizontal">
..... //为了简洁而删除了其余的html