4

我有一个非常奇怪的问题。更糟糕的是它只发生在生产(天蓝色)中,而不是在开发机器中。

我看到我的应用程序使用布局的 .Mobile 版本,但使用视图的桌面(而不是 .mobile)版本。我完全不知道如何解决这个问题..

它正在检测移动版本但它不是......有什么想法吗?

4

2 回答 2

0

引擎使用位于此处的文件 -C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\Browsers

(或\Framework64\

它们在任何一台机器上都可能不同。使用 Request.Browser.IsMobileDevice 找出哪些设备检测到什么。编写自定义显示模式也有帮助吗?

http://weblogs.asp.net/gunnarpeipman/archive/2011/09/18/asp-net-mvc-4-display-modes.aspx

于 2013-04-15T10:25:02.377 回答
0

我认为我在下面给出的解决方案就是答案(它工作了一会儿),但一段时间后它仍然切换到错误的视图。

像互联网的其他部分一样,我从 Nuget 安装了 51 Degrees 这运行良好,而且很容易设置


(下面对我不起作用,但也许对你有用) http://www.nuget.org/packages/Microsoft.AspNet.Mvc.FixedDisplayModes

看起来这是一个已知的错误:http ://aspnetwebstack.codeplex.com/workitem/280?PendingVoteId=280

根据上面的 codeplex 链接,请记住确保这一点:

对于自定义已注册视图引擎列表的一小部分项目(例如,在 Global.asax 中),您应该确保您引用的是 Microsoft.Web.Mvc.FixedRazorViewEngine 或 Microsoft.Web.Mvc.FixedWebFormViewEngine,而不是核心运行时二进制文件中的类

于 2013-07-24T12:28:35.103 回答