2

我知道在 ASP.NET MVC 中,您可以拥有移动视图并执行诸如Index.mobile.cshtmland_Layout.mobile.cshtml之类的操作,并且服务器知道将这些视图/页面提供给移动设备而不是Index.cshtmland _Layout.cshtml,但这也可以在普通的 ASP.NET 网站中完成(不使用 MVC )?

注意:我在普通的 ASP.NET 网站中使用剃刀语法。

提前致谢。

——李

更新 :

为了澄清,我知道各种浏览器检测方法。我的问题是关于表单中的移动视图是否Index.mobile.cshtml在普通的 ASP.NET 中可用。

更新(功能现在包含在 2013 年 2 月 18 日宣布的 ASP.NET 最新版本中):

说鬼话.. 这在最近的版本中是可能的.. 向下滚动页面到标题“ASP.NET Web 窗体增强”

http://weblogs.asp.net/scottgu/archive/2013/02/18/announcing-release-of-asp-net-and-web-tools-2012-2-update.aspx

4

3 回答 3

3

看一下对 ASP.NET Web 窗体的移动支持的简要说明:

如何:将移动页面添加到您的 ASP.NET Web 窗体/MVC 应用程序

于 2013-01-30T15:43:25.487 回答
0

我的理解是,MVC4 原生支持的备用视图模式是 MVC 使用的 WebPages2 的结果,目前仅在 MVC 中用于通过视图引擎解决定位视图(VirtualPathProvider和的组合DisplayModeProvider)。这是因为通过 MVC 提供的视图和通过 URI 提供的请求不会映射到服务器上的物理位置以提供文件。另一方面,ASP.NET 直接基于 URI 提供文件,并且不像 MVC 那样依赖于虚拟路径提供程序。

我的猜测是 ASP.NET 不支持基于 MVC 使用的相同框架自动提供备用文件。话虽如此,我确信有可能根据 ASP.NET 的逻辑派生一个实现,该VirtualPathProviderViewEngine实现可以实现与 ASP.NET 类似的结果,但是我知道目前没有实现这一点。最好的建议是看看你是否可以找到的用法,DisplayModeProvider看看是否有任何弹出。

我不是专家,所以请随意继续寻找,但我想我会提供我能提供的。

于 2013-01-30T16:28:17.253 回答
0

所以我得出的结论是,这不是普通 ASP.NET 中的内置功能。虽然有(IMO 不太优雅)替代方案。

ASP.NET 移动视图是否适用于 ASP.NET MVC?是的。

更新:这可能在最新版本中是可能的

http://weblogs.asp.net/scottgu/archive/2013/02/18/announcing-release-of-asp-net-and-web-tools-2012-2-update.aspx

——李

于 2013-02-06T08:39:43.330 回答