我有以下代码读取userAgent并根据使用indexOf匹配的值执行一些逻辑:
String userAgent; userAgent = Request.UserAgent; // If it's not IE if (userAgent.IndexOf("MSIE") < 0) { return RedirectToAction("Index","Home",new { area = "Dashboard" }); } // If it's IE BUT ChromeFrame else if(userAgent.IndexOf("ChromeFrame") > -1) { return RedirectToAction("Index",new { area = "Dashboard" }); } // It's just IE else { return View("ChromeFrame"); }
如果它是IE,那么它应该返回视图,或者如果它的IE但包含ChromeFrame,那么它应该重定向,它是另一个浏览器,那么它也应该重定向.
解决方法
只需使用
contains method,这将使您的代码不那么神秘,不易出错.
if (userAgent.Contains("MSIE")) { return RedirectToAction("Index",new { area = "Dashboard" }); }