asp net wap开发心得

本文分享了使用ASP.NET进行WAP网站开发的经验,包括如何处理不同设备的适配问题,解决开发过程中遇到的模拟器选择、链接切换、乱码等常见难题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.youkuaiyun.com/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                asp.net wap开发心得

用ASP.NET开发,ASP.NET开发WAP站点,实在简单,就是一个移动控件的运用,根本不用懂WML语法.唯一不同的,就是一个ASPX文件可以支持多个FORM,不同FORM之间可以切换,
最后ASP.NET根据访问的设备,输出不同的内容,
如果用IE访问就输出HTML,手机访问,输出WML,
不过在开发过程中也遇到了很多问题,一些问题总结如下:
    1.模拟器选择:
    WINWAP,
    M3Gate,
    UP.SDK4.0,(推荐)
    OPenWave  5.0 (测试时需要),
    OPenWave6.2, (IIS 6.0应用,IIS5.0可能显示,但会有问题)
    CheckCom  WAPBrowser 3.2
    模拟器问题:
     ASP.NET把一些常有的模拟器,的配制信息用正则表达式写在Machine.config里
     在上述的模拟器中,我只有UP.SDK4.0,OPenWave 5.0,
    他们只是一个公司的产品:
     需要下载,配制文件驱动更新:现在最新版本是 evice 4下载请到这里下载:
http://www.microsoft.com/downloads/details.aspx?FamilyId ...  B1-4DD61A5B7CCB&displaylang=en
但是,即使驱动更新以后,还是一些设备不能访问:
这时需要强制输出WML:
在web.config
添加下面内容<system.web>下
<browserCaps>
             <result type="System.Web.Mobile.MobileCapabilities,  System.Web.Mobile, Version=1.0.5000.0, Culture=neutral,  PublicKeyToken=b03f5f7f11d50a3a"/>
            <use  var="HTTP_USER_AGENT"/>
                    preferredRenderingType =  "wml11"
                    preferredRenderingMime = "text/vnd.wap.wml"
                     preferredImageMime =  "image/vnd.wap.wbmp"
</browserCaps>
如果定义相关其它属性可以完整的移动设置属性:
     <browserCaps>
            <result  type="System.Web.Mobile.MobileCapabilities, System.Web.Mobile,  Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
             <use var="HTTP_USER_AGENT"/>

             browser=Unknown
            version=0.0
            majorversion=0
             minorversion=0
            frames=false
             tables=false
            cookies=false
             backgroundsounds=false
            vbscript=false
             javascript=false
            javaapplets=false
             activexcontrols=false
            win16=false
             win32=false
            beta=false
            ak=false
             sk=false
            aol=false
            crawler=false
             cdf=false
            gold=false
             authenticodeupdate=false
             tagwriter=System.Web.UI.Html32TextWriter
             ecmascriptversion=0.0
            msdomversion=0.0
             w3cdomversion=0.0
            platform=Unknown
             css1=false
            css2=false
            xml=false

             mobileDeviceManufacturer = "Unknown"
            mobileDeviceModel =  "Unknown"

            gatewayVersion = "None"
             gatewayMajorVersion = "0"
            gatewayMinorVersion = "0"

            preferredRenderingType = "wml11"
           preferredRenderingMime =  "text/vnd.wap.wml"
           preferredImageMime =  "image/vnd.wap.wbmp"

            defaultScreenCharactersWidth = "12"
             defaultScreenCharactersHeight = "6"
             defaultScreenPixelsWidth = "96"
            defaultScreenPixelsHeight =  "72"
            defaultCharacterWidth = "8"
             defaultCharacterHeight = "12"
            screenBitDepth = "1"
             isColor = "false"
            inputType = "telephoneKeypad"

             numberOfSoftkeys = "0"
            maximumSoftkeyLabelLength =  "5"

            canInitiateVoiceCall = "false"

             canSendMail = "true"
            hasBackButton = "true"
             rendersWmlDoAcceptsInline = "true"
            rendersWmlSelectsAsMenuCards  = "true"
            rendersBreaksAfterWmlAnchor = "false"
             rendersBreaksAfterWmlInput = "false"
             rendersBreakBeforeWmlSelectAndInput = "true"
             requiresAttributeColonSubstitution = "true"
             requiresPhoneNumbersAsPlainText = "false"
             requiresUrlEncodedPostfieldValues = "false"
             requiredMetaTagNameValue = ""
            rendersBreaksAfterHtmlLists =  "true"
            requiresUniqueHtmlCheckboxNames = "true"
             requiresUniqueHtmlInputNames = "true"
             requiresUniqueFilePathSuffix = "true"
            supportsCss = "false"
             hidesRightAlignedMultiselectScrollbars = "false"
             canRenderAfterInputOrSelectElement = "true"
             canRenderInputAndSelectElementsTogether = "true"
             canRenderOneventAndPrevElementsTogether = "true"
             canCombineFormsInDeck = "true"
            canRenderMixedSelects =  "true"
            canRenderPostBackCards = "true"
             canRenderSetvarZeroWithMultiSelectionList = "true"
             supportsImageSubmit = "true"
            supportsSelectMultiple =  "true"
            requiresHtmlAdaptiveErrorReporting = "false"
             requiresContentTypeMetaTag = "false"
            requiresDBCSCharacter =  "false"
            requiresOutputOptimization = "false"
             supportsAccesskeyAttribute = "false"
            supportsInputIStyle =  "false"
            supportsInputMode = "false"
             supportsIModeSymbols = "false"
            supportsJPhoneSymbols =  "false"
            supportsJPhoneMultiMediaAttributes = "false"
             maximumRenderedPageSize = "2000"
             requiresSpecialViewStateEncoding = "false"
             requiresNoBreakInFormatting = "false"
            requiresLeadingPageBreak =  "false"
            supportsQueryStringInFormAction = "true"
             supportsCacheControlMetaTag = "true"
            supportsUncheck =  "true"
            canRenderEmptySelects = "true"
             supportsRedirectWithCookie = "true"
             supportsEmptyStringInCookieValue = "true"
             cachesAllResponsesWithExpires = "false"
            requiresNoSoftkeyLabels  = "false"
            defaultSubmitButtonLimit = "1"
            
             supportsBold = "false"
            supportsItalic = "false"
             supportsFontSize = "false"
            supportsFontName = "false"
             supportsFontColor = "true"
            supportsBodyColor = "true"
             supportsDivAlign = "true"
            supportsDivNoWrap =  "false"
            supportsCharacterEntityEncoding = "true"

             isMobileDevice="false"
</browserCaps> 
具体属性的意思可以考试MSDN:设备功能列表
ms-help://MS.MSDNQTR.2003FEB.2052/mwsdk/html/mwlrfDeviceCapabilitiesTable.htm

2.链接:
在同一个aspx文件,使用Link控件的,#FORM来切换不同Form时在  OPenWave 5.0测试会出现错误!
建议在程序通过ActiveForm来做
3.乱码:
     如果在开发过程出现乱码,通过修改Web.Config
    <globalization
             requestEncoding="gb2312"
            responseEncoding="gb2312"
     />
4.取消移动设备缓存:
  Page.Response.Expires = -1;
    Response.CacheControl = "Public"; 
5.重定向
重定向通过
RedirectToMobilePage函数
不过使用过程中可能会出现一些问题
建议用Link控件来代替

    一些开发资料:
http://msdn.microsoft.com/mobility/downloads/sdks/default.aspx

http://www.dotnet247.com/247reference/__site/72

http://www.wapease.com

http://www.sp-forum.org/download/list.asp?type=14

http://www2.chn.monternet.com:808 ...  /DevWapSimulator.jsp

http://www.tech-archive.net/Archive/DotNet/mic ...  et.framework.aspnet.mobile/
            

给我老师的人工智能教程打call!http://blog.youkuaiyun.com/jiangjunshow
这里写图片描述
E缘导航程序 前台功能 1.添加网站 2.用户留言 3.网站搜索 4.最新链入、加盟网站分页展示 5.网站显示类型(首页顶部、首页推荐、分类页里面) 6.类别显示类型(首页、普通、子分类) 7.访问统计:单个IP日独立统计,一个IP一天进出都只算一次有效性 8.用户访问记录:访问时间、手机号、IP号、来源地址、来源网站;链出网站具有相同记录 9.二次点击:判断用户进入网站后是否有点击站内页面 10.自动控量:程序按网站进出所设比例自动控制进出流量(当用户重复点击某个站时,程序自动跳转到其他今日未访问且比例未达到标准的网站) 11.网站屏蔽:开启屏蔽后非手机用户禁止访问 12.HTML彩色版 13.识别用户手机是否支持WML版,不支持跳转到HTML版 14.用户收藏夹(开发中。。。) 后台功能 1.系统的基本配置 2.网站信息、分类信息、留言信息增删改查 3.访问详情多条件查询/删除(网站ID、时间段、进/出、有效性) 4.网站总体日访问统计(可按时间段查询/删除、单选多选删除) 5.单个网站日访问统计(可按时间查询/删除) 6.IP的总体统计查询/删除(统一IP的手机访问进/出总数、非手机进/出总数,所有总计) 6.页面的自定义内容修改 7.添加新页面(内容自定义,支持HTML及普通文本) 8.账号密码修改/注销退出 账号密码 后台地址:http://您的域名/admin 用户账号:admin 用户密码:123456
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值