Asp.net mvc 2 将操作重定向到移动视图
这是我在HomeController中为当前站点提供的内容。如何检测该操作是否从移动设备调用,如果是,则重新定向到MobileHome.aspx而不是Home.aspxAsp.net mvc 2 将操作重定向到移动视图,asp.net-mvc-2,mobile-website,Asp.net Mvc 2,Mobile Website,这是我在HomeController中为当前站点提供的内容。如何检测该操作是否从移动设备调用,如果是,则重新定向到MobileHome.aspx而不是Home.aspx 我不需要知道设备的详细信息,因为我正在JQuery Mobile中实现视图,它应该根据呈现在其中的视图进行正确调整。以下是对控制器类的覆盖。我还没有测试过,所以请考虑伪代码: public ActionResult Home() { return View(); } 您可
我不需要知道设备的详细信息,因为我正在JQuery Mobile中实现视图,它应该根据呈现在其中的视图进行正确调整。以下是对控制器类的覆盖。我还没有测试过,所以请考虑伪代码:
public ActionResult Home()
{
return View();
}
您可以使用Request.Browser.IsMobileDevice确定设备是否为移动设备,然后检查结果是否为视图。但是,如果将实际视图传递给操作的结果,则仅更改视图名称是不够的。您可能会发现该名称很有用
protected override void OnActionExecuted(ActionExecutedContext filterContext)
{
if (this.Request.Browser.IsMobileDevice && filterContext.Result is ViewResultBase)
{
var viewResult = filterContext.Result as ViewResultBase;
viewResult.ViewName = "Mobile" + viewResult.ViewName;
}
base.OnActionExecuted(filterContext);
}