我将returnUrl = Request.Url传递给控制器​​动作,问题是当我在重定向之前使用以下代码检查它时,由于IsLocalUrl()调用而导致失败。为什么?

if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/")
    && !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\"))
   {
      return Redirect(returnUrl);
   }


谢谢。

最佳答案

问题很简单,对于Url.IsLocalUrl()这样的URL,/Orders/Details/5326返回true;对于http://www.company.com/Orders/Details/5326这样的URL,false返回。

关于asp.net - returnUrl和IsLocalUrl(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25522008/

10-09 20:04