2013-05-18 41 views
1

我正处于研究如何在ASP.NET Web Forms站点项目中支持移动页面集的早期阶段。移动交换如何在vs.net 2012 ASP.NET Web Forms站点项目中工作

在以前使用MVC和Razor的项目中,我们只需要一个.mobile.cshtml版本的页面,ViewEngine将处理服务器上桌面和移动版本页面之间的切换(例如index.cshtml会被用于桌面浏览器和用于移动的index.mobile.cshtml)。

我曾经认为类似的东西会适用于Web窗体项目,并确保启动Visual Studio 2012,创建ASP.NET Web窗体站点项目,并且该模板创建了Site.Master和Site.Mobile.Master,甚至包括一个ViewSwitcher.ascx。但是,当使用Chrome将用户代理设置为其中一个移动字符串或使用Electric Plum IPhone模拟器浏览到该网站时,我总是以桌面版本的页面结束。

我已经做了一些调试,看看DisplayModeProvider.Instance.Modes集合,并有一个移动提供商和默认提供商列出,所以我有点困惑,还有什么是必需的获得移动版本正在呈现。

回答

0

嘿尼尔你看看项目中的CSS文件吗? @media标签允许您在更小的设备上编写css风格。

/* ** * ** * *** *手机样式* * ** * ** * ***/

@media only screen and(max-width:850px){

//这里的样式

}

+0

您好托尼,是的,我可以用一个响应式设计型的做法,实际上这将是我的首选方法,不过项目涉及提供移动现有网站的解决方案。我们可以从头开始对移动设备进行编码,但我喜欢利用相同的解决方案,并将桌面和移动页面并排放置在服务器上,然后基于浏览器呈现给客户端。 MVC通过.mobile.cshtml类型的方法和项目模板为aspx提供类似的东西来支持这一点,所以我很难成功。 –

0

我们有同样的问题。我们需要一些时间来弄清楚,你需要用URLRewrite-URL打开页面。尝试打开 http://mymachine/myApplication/default 而不是 http://mymachine/myApplication/default.aspx

最好的问候, 尼科

相关问题