public ActionResult Home()
{
return View();
}
这就是我在HomeController中对当前网站所做的一切。如何检测是否从移动设备调用操作,如果是,则重定向到MobileHome.aspx而不是Home.aspx。将动作重定向到手机视图
我不需要知道设备的细节,因为我实现在jQuery Mobile的观点,这应该正确地调整自身取决于它在渲染视图。
public ActionResult Home()
{
return View();
}
这就是我在HomeController中对当前网站所做的一切。如何检测是否从移动设备调用操作,如果是,则重定向到MobileHome.aspx而不是Home.aspx。将动作重定向到手机视图
我不需要知道设备的细节,因为我实现在jQuery Mobile的观点,这应该正确地调整自身取决于它在渲染视图。
您可能会发现following blog post有用。
下面是一个覆盖Controller类。我没有测试过这一点,所以认为这是伪代码:
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);
}
可以使用Request.Browser.IsMobileDevice以确定该设备是移动(明显),然后检查是否结果是一个视图。但是,如果将实际视图传递给操作的结果,则更改视图名称是不够的。