public ActionResult Home()
{
return View();
}
这就是我对HomeController中当前站点的拥有。如何检测是否从移动设备调用了该操作,如果是,则重定向到MobileHome.aspx而不是Home.aspx。
我不需要知道设备的细节,因为我在JQuery Mobile中实现了视图,它应该根据渲染的视图正确调整自己。
答案 0 :(得分:0)
以下是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来确定设备是否可移动(显然),然后检查结果是否为视图。但是,如果将实际视图传递给操作结果,则更改视图名称是不够的。
答案 1 :(得分:0)
您可能会发现following blog post有用。