我有一些代码,
if (Request.Headers["User-Agent"] == "Mozilla/4.0 (compatible; MSIE 4.01; Windows NT; MS Search 6.0 Robot)")
{
this.Response.Redirect("/_windows/default.aspx?" + qp.ToString());
}
else if(Request.Headers["GET"].Contains("SignOut.aspx") ) {
this.Response.Redirect("/_layouts/signout.aspx");
}
else
{
this.Response.Redirect("/_trust/default.aspx?trust=ADFS%20DEV&" + qp.ToString());
}
问题是我的else if
无效,因为Request.Headers
无法读取" GET",每个Microsoft http://msdn.microsoft.com/。我想知道GET url何时包含SignOut.aspx,有没有办法让我读取标题的那一部分?
答案 0 :(得分:1)
看起来您正在寻找HttpRequest.Url,您可以通过Request.Url从Request对象访问:
...
else if (Request.Url.AbsoluteUri.Contains("SignOut.aspx"))
{
//Whatever
}
...
此外,您可能希望更多地了解框架为处理请求提供的内容 - 您正在以艰难的方式做事并重新发明轮子。考虑使用
Request.UserAgent
而不是
Request.Headers["User-Agent"]