首页 新闻 会员 周边

mvc4中使用了jquery.mobile,为什么有时候视图是移动版的,有时候又显示是桌面版的呢?

0
悬赏园豆:10 [已关闭问题] 关闭于 2013-07-23 18:35

mvc4中使用了jquery.mobile,为什么有时候视图是移动版的,有时候又显示是桌面版的呢?

问题补充:

怎么没人解决呢?

小徐的博客的主页 小徐的博客 | 初学一级 | 园豆:15
提问于:2013-07-17 18:34
< >
分享
所有回答(2)
0

没用过,不过关注下。应该和你视图的html有关系。

Tom.汤 | 园豆:3028 (老鸟四级) | 2013-07-17 20:23
0

在网上发有人提出和我一样的问题:
http://forums.asp.net/t/1824033.aspx/2/10?MVC+4+RC+Mobile+View+Cache+bug+

这个问题是mvc4的一个bug,视图缓存bug,在移动视图访问过,在刚15分钟过期时如果有人先访问桌面视图,则以后移动端访问就显示桌面端的视图。

微软提供了一个临时的解决方案:
http://www.nuget.org/packages/Microsoft.AspNet.Mvc.FixedDisplayModes


再提代其它几个解决方案:
在global.asax中以下代码中加入
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();

//以下是新添加的代码

//第一种方法
ViewEngines.Engines.OfType<RazorViewEngine>().First().ViewLocationCache =
DefaultViewLocationCache.Null;

//第二种方法
ViewEngines.Engines.OfType<RazorViewEngine>().First().ViewLocationCache =
new DefaultViewLocationCache(Cache.NoSlidingExpiration);
}

小徐的博客 | 园豆:15 (初学一级) | 2013-07-23 18:35
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册