点击这里给我发消息 点击这里给我发消息

NBear案例-移动WEB开发之浏览器文件定义

添加时间:2010-1-5
    相关阅读: 开发 案例 WEB 模板 Windows 系统

 今天为自己写的家庭帐务系统加一个WEB的操作界面,方便我爱人从她的手机上添加操作记录.该系统是用NBear实现的数据访问.

 

    开发很正常,在显示查询记录,我希望能在我老婆的手机上显示一个表格,她的手机的操作系统是IE4.01,是支持的.可是无论如何都不行.看来是.Net无法识别。

    查找一下,发现有很多种方法可以解决这个问题,包括属性重写,模板输出等等,可是都不是很方便。想想真可恨,明明系统支持,就是不行。后进行跟踪现在原因是.Net没有正确识别出客户端的浏览器,于是开始研究浏览器定义文件。

    终于发现因为客户端的UserAgent里多了一个Windows CE,所以被.Net拒绝接受,从而作为最普通的Mozilla浏览器处理。没有办法,只好自己定义了一个浏览器定义文件,终于解决,该浏览器定义文件如下,供大家参考

<browser id="Dopod900" parentID="Mozilla">
<identification>
<userAgent match="^Dopod900 Mozilla[^(]*\([C|c]ompatible;\s*MSIE (?'version'(?'major'\d+)(?'minor'\.\d+)(?'letters'\w*))(?'extra'[^)]*)" />
</identification>
<capture>
<userAgent match="Dopod900" />
</capture>
<capabilities>
<capability name="browser" value="IE" />
<capability name="extra" value="${extra}" />
<capability name="isColor" value="true" />
<capability name="letters" value="${letters}" />
<capability name="majorversion" value="${major}" />
<capability name="minorversion" value="${minor}" />
<capability name="screenBitDepth" value="8" />
<capability name="type" value="IE${major}" />
<capability name="version" value="${version}" />
<capability name="activexcontrols" value="true" />
<capability name="backgroundsounds" value="true" />
<capability name="cdf" value="true" />
<capability name="cookies" value="true" />
<capability name="css1" value="true" />
<capability name="ecmascriptversion" value="1.2" />
<capability name="frames" value="true" />
<capability name="javaapplets" value="true" />
<capability name="javascript" value="true" />
<capability name="jscriptversion" value="3.0" />
<capability name="msdomversion" value="4.0" />
<capability name="supportsFileUpload" value="true" />
<capability name="supportsMultilineTextBoxDisplay" value="false" />
<capability name="supportsMaintainScrollPositionOnPostback" value="true" />
<capability name="tables" value="true" />
<capability name="tagwriter" value="System.Web.UI.HtmlTextWriter" />
<capability name="vbscript" value="true" />
</capabilities>
</browser>

    加了该定义文件以后,.Net就可以正确的识别出客户端浏览器的能力了。从而适配出了正确的选择。

 

本文作者:
咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册