【发布时间】:2013-03-03 01:40:29
【问题描述】:
我正在构建一个 MVC 4 Web 应用程序,每当用户尝试在未经身份验证的情况下访问安全页面时,我都会将其触发到登录屏幕
[AllowAnonymous]
public ActionResult Login(string returnUrl)
{
ViewBag.ReturnUrl = returnUrl;
return View();
}
一旦他们登录,我使用 returnURL 字符串将他们返回到他们之前想要访问的页面。都很好。
但是,我想知道,是否可以从 returnURL 字符串中获取 ID 参数,例如,如果 returnURL 字符串是
/Course/ICT/4
有没有办法只得到 4 的值?
【问题讨论】:
-
不知道任何内置方法,但您可以使用 int found = returnUrl.LastIndexOf('/') 然后使用 returnUrl.SubString(found) 如果找到的返回值是 > - 1
-
@Nate 目前,我刚刚传递了完整的 returnURL,这对我没有用。我曾想过用左或右修剪字符串,但这似乎不是这样做的方法,主要是因为参数可能是 4,或 44,甚至 4444,因此很难知道很多要修剪的字符。有点被这个难住了!
-
我刚刚发布了一个答案,该答案应该涵盖大多数带有 ID 参数的 MVC uri 情况。
标签: c# asp.net-mvc url query-string