【问题标题】:.Net MVC4 Wrong Views Displayed (.mobile issues).Net MVC4 显示错误视图(.mobile 问题)
【发布时间】:2013-08-29 21:29:57
【问题描述】:

最近我使用 MVC4 .mobile 视图添加了该网站的移动版本。我从 _Layout.mobile.cshtml 开始以与桌面版非常相似的方式构建网站,该文件指向了专门为移动网站设计的正确脚本和 css。

发布网站后,我检查了一切是否正常,正如它的设计方式一样。但很快我就被告知该网站已损坏。在检查移动站点时,我注意到 _Layout.mobile.cshtml 已加载,但不是从 Home 控制器发送的 Index.mobile.cshtml,而是返回的是为桌面设计的标准 Index.cshtml。桌面索引文件也是使用移动 css 渲染的,这导致整个移动网站看起来非常混乱。附带说明一下,该网站的桌面版本没有发生任何变化。

重新发布解决了这个问题,但我也注意到有时它会恢复为显示正确的视图,即使在它坏了之后也没有重新发布。

我开始研究这个问题,并偶然发现了关于显示模式不起作用的讨论,例如: ASP.NET MVC 4 Mobile Display Modes Stop Working

使用已弃用的 NuGet 解决方案:http://www.nuget.org/packages/Microsoft.AspNet.Mvc.FixedDisplayModes

我认为既然这个讨论是从一年前开始讨论的早期版本,它应该由最近的 MVC4 更新来修复。我当前的版本是 4.0.20710.0,所以我在执行任何其他操作之前使用 NuGet 更新到 4.0.30506。

这并没有解决问题,但不仅如此,在检查时我注意到参考 System.Web.MVC 仍然指向 4.0.20710.0 版本的 dll 文件。

我担心添加标记为已弃用的不必要修复,并希望 MVC 更新能够解决此问题。有什么建议吗?

【问题讨论】:

  • 我正在评估在我们的新项目中使用显示模式的过程。 Andrew 的建议是否解决了您的问题?
  • 我刚刚更新到最新的 MVC 4 版本,它在不需要 nugget 包的情况下解决了问题。
  • 谢谢,我做了一个示例 MVC4 项目。我觉得很好。只是想和你一起检查..

标签: asp.net-mvc-4


【解决方案1】:

链接中的包是预发布 Asp.Net MVC 5 的包。确实,他们确实解决了您在 Asp.Net MVC 5 包中遇到的问题,但它仍然是 Visual 的预发布Studio 2013。在页面上的附加链接中,有一个链接指向仍然适用于 Asp.Net MVC 4 的非 beta、非 RC 版本 (FixedDisplayModes)

【讨论】:

  • 谢谢,我没有注意到这个 MVC4 修复。我会看看这是否有助于解决问题。
  • 罕见的是这个问题是从 2013 年开始的,今天我仍然有同样的错误,我所有的包都更新了
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-30
  • 2023-04-05
  • 1970-01-01
  • 2012-11-26
  • 2023-04-07
  • 1970-01-01
相关资源
最近更新 更多