asp.net网站手机支持

时间:2010-01-16 17:48:07

标签: asp.net cross-browser

我需要让我的网站在黑莓手机上运行良好,我还没有投入太多精力来完成这项工作,但我有一些谷歌正在努力解决的问题。

我读过有关检测浏览器类型和修改asp.net控件的默认行为的信息here

如果我这样做,我将如何向特定浏览器提供不同的样式表?

if (Request.Browser.Browser.ToString() == "blackberry") //pseudocode
{
    Response.Write("bb.css");
}
else
{
    Response.Write("bb.css");
}

这样可以正常工作,但我觉得有更好的方法,我确定我过去读过一些东西,但我似乎无法回想起。

我也在考虑回复。重定向到黑莓的不同页面,目前我将以类似的方式实现。

任何想法或建议。

3 个答案:

答案 0 :(得分:2)

检查出来

http://mdbf.codeplex.com/

也是http://nerddinner.codeplex.com/

的nerddinner.com

答案 1 :(得分:1)

一般情况下,浏览器可能假装它是一个不同的(这是由Opera使用的,默认情况下设置为假装它是IE来克服对有问题网站的某些限制)。我个人认为黑莓和类似的设备很容易被发现,所以没有理由不像你的样品那样做..来自Vivek的网站看起来也不错;)

答案 2 :(得分:1)

虽然与您的实际问题没有直接关系,但您可能希望在“识别手机”标题下阅读我写的答案here

你真正应该寻找的是一种检测当前设备功能的方法,如果你想要正确地完成这项工作,那么你是男孩。我在其他答案中说过的问题是,由于用户代理字符串的历史,它们在很长一段时间内都不可靠。

如果整个手机不是你的主要平台,那么你就不应该这么做了,找到有用的东西,例如检查用户代理字符串是否包含“Blackberry”并对此感到满意。但是,如果你确实想要正确地做到这一点,你必须开发一个功能检测框架来为你完成所有可能的组合和排列 - 在这条路上没有简单的路径。

对不起,我觉得有必要成为这样一个消极的人。