加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

为什么ASP.NET MVC中的移动视图在不同的服务器上显示不同?

发布时间:2020-12-16 00:31:55 所属栏目:asp.Net 来源:网络整理
导读:我正在使用新的ASP.NET MVC 4测试版,并且正在尝试创建一个主要与响应式设计相关的系统,但是对于一个特定视图,我正在使用移动视图来呈现移动设备的特定视图。 我的结构只是我有一个Show.cshtml,之后我有一个Show.mobile.cshtml。 如果我通过IIS Express从
我正在使用新的ASP.NET MVC 4测试版,并且正在尝试创建一个主要与响应式设计相关的系统,但是对于一个特定视图,我正在使用移动视图来呈现移动设备的特定视图。

我的结构只是我有一个Show.cshtml,之后我有一个Show.mobile.cshtml。

如果我通过IIS Express从我的开发机器上提供我的网站,这个视图可以正确显示iPad,iPhone,Android手机和手机Opera,如果我在我的开发机器上进行本地发布到IIS 7.5,它也可以正常工作。

当我们部署到实时服务器时,我们已经尝试在两个不同的服务器上部署问题。那么行动检视只会提供给iPhone,没有其他行动装置。这是一贯的。我们的服务器设置都是Windows 2003 / IIS6和Windows 2008 R2 / IIS7.5,它们在两者上都是一样的,只有iPhone被提供给移动视图。

这可能是什么原因?

我没有在global.asax中添加任何定制的东西。

UPDATE

经过一些更多的研究,我看起来显然DisplayMode和移动视图的默认行为取决于Request.Browser.IsMobileDevice标志。该标志反过来似乎依赖于.NET Framework文件夹的Config / Browsers文件夹中的.browser文件。

在我的开发机器上,我具有不同于我部署到的服务器上的.browser文件。到目前为止,我已经尝试在网络应用程序的App_Browsers-文件夹中部署我的机器上的那些,但是这并不能解决我的问题。可能这样吗?

解决方法

这不是你的问题的完整答案,但我认为这仍然有帮助。

ASP.NET在我的经验中不是很好地解决浏览器功能。所以,我可以建议看看51Degrees.Mobi Foundation.史蒂文·桑德森有一个很好的博客文章:

Using 51Degrees.Mobi Foundation for accurate mobile browser detection on ASP.NET MVC 3

我不完全确定,但您应该可以轻松地将其挂钩到ASP.NET MVC 4 DisplayMode基础架构。这是一个很好的资源:

51Degrees.mobi and MVC4

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读