Cro*_*ros 17 asp.net asp.net-mvc mobile asp.net-mvc-4
我正在使用新的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文件,而不是我部署到的服务器上的文件.到目前为止,我已经尝试在我的机器上部署我在Web应用程序的App_Browsers文件夹中的那些,但这并没有解决我的问题.这可能是要走的路吗?
这不是你问题的完整答案,但我认为它仍然会有所帮助.
根据我的经验,ASP.NET不太擅长解决浏览器功能.所以,我可以推荐一下51Degrees.Mobi Foundation.Steven Sanderson有一篇很好的博文:
使用51Degrees.Mobi Foundation在ASP.NET MVC 3上进行准确的移动浏览器检测
我不完全确定,但您应该能够轻松地将其连接到ASP.NET MVC 4 DisplayMode基础结构.这是一个很好的资源:
归档时间: |
|
查看次数: |
1664 次 |
最近记录: |