最近一段时间一直在做一个给手机浏览的网站基于asp.net2.0,现在第一期已经到尾声,说说开发的感想。客户要求只要支持wap2.0的手机都能浏览(我刚开始想他们应该说得是属于智能手机级别的都能浏览,后来发现有点不对,他们的测试机很多都够不上这个级别),开发指定工具vs2005+asp.net2.0,,看了看微软对于asp.net2.0 mobile开发的说明,ms说asp.net2.0的服务器端控件全部支持wap2.0的,.net会自适应的。这个东西好啊,所以老大决定放弃使用mobile web form建页面,全部使用普通的web form来建。
     一开始做测试页面先试试,就碰到问题,openwave模拟器都浏览不了,头痛。老大查了查资料,决定把自动生成页面里的

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

换成

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">

这样一来好多了,openwave能正常浏览了,决定使用正式开发。
    由于要给手机浏览,页面就要做的简单一点,这个也好啊。对页面的布局,我属于白痴级别的。开始编码,后台数据库操作,web service的调用,session管理,log管理,工具类,页面功能基本上都开发完成。这时候问题出来了 随着测试机类型的增加,毛病越来越多,很多机型不能访问网站。左测右测,后来得出结论是javascript的问题,只要页面里生成javascript的语句总有机器不能浏览页面的。全体吐血......
   脑袋撑破,最后想出一个 非常破的解决方案,把所有页面上需要postback的地方,比如button等控件全部换成link,而需要提交内容的地方 换成submit的html控件。换成link之后要自己手工控制很多参数的变换,看得眼很晕~,不过也是有好处的 由于没有自动的postback,viewstate也用不到了,把所有控件的viewstate禁用掉,页面变小了 嘿嘿。而使用submit带来了一个问题,submit不能在<form runat=server>中使用,只能放<form id="form2" action="xxx.aspx" method="post">中,这样一来 又有些asp.net2.0的服务端控件不能在这样的form中使用,奇怪的是 不是全部不能用,而是有些不能用。这样一来在一个页面里 就要规划一下放几个form,有些是runat=server,有些不要。改的头上都是汗....
   终于还是做完了,手机测试挺顺利,这时候 老外公司说要对源代码进行检查,比较狠的是 据说请来了一个微软的专家,二话不说 发过来一个框架的例子 说一定要按照这个框架这样写代码 我一看 business+datalayer+web form+framwork ,幸亏 我们写代码的时候是按照petshop4.0的框框来的,交上代码 两天后发回重审,说他的框架里没有model这个项目,我看看,原来我的Model跟他的Business层里的BusinessObject项目是同一个功能,把代码全部移到BusinessObject里,再使用一个模式实现了BusinessFacade层,全部数据库操作,web service调用都交给它了。再看修改意见 数据层的数据库操作要使用Factory模式,不然只支持sql server,对以后的扩展不好,好 我改。接着是把全部中文注释删除光光,不然他们说在他们那里打开出现乱码,公司领导觉得很不好....., 最后 老外还没有向我们要文档,也许忘了 以后会补吧!

路漫漫其修远兮 吾将上下而求索

本文转自 lu xu 博客园博客,原文链接:http://www.cnblogs.com/dotLive/archive/2006/11/09/555456.html   ,如需转载请自行联系原作者

开发asp.net2.0手机用网站 点滴[xgluxv]相关推荐

  1. 使用DXperience开发Asp.net2.0程序——序

    众所周知,visual studio 2005集成开发环境中内置了不少HTML服务器控件.数据控件以及一些其他功能控件,但这些预置的控件在使用上始终是不尽如人意,样式单调.提供的功能不够全面等等.想得 ...

  2. ASP.NET2.0自定义控件组件开发 第六章 深入讲解控件的属性

    深入讲解控件的属性持久化(一) 系列文章链接: ASP.NET自定义控件组件开发 第一章 待续 ASP.NET自定义控件组件开发 第一章 第二篇 接着待续 ASP.NET自定义控件组件开发 第一章 第 ...

  3. asp.net2.0如何加密数据库联接字符串

    asp.net2.0如何加密数据库联接字符串 在asp.net2.0中,发布网站时,加密web.config,这样可以有效保证数据库用户和密码安全,其步骤如下: 1.添加密钥 执行:C:/WINDOW ...

  4. ASP.NET2.0 开发无刷新页面

    ASP.NET2. 0  开发无刷新页面 在已经发布的 ASP.NET2. 0  中,越来越多的 Ajax 开发包被开发出来的情况下, ASP.NET2. 0  自带的无刷新页面技术没有被很多人了解, ...

  5. ASP.NET2.0中themes、Skins轻松实现网站换肤!

    ASP.NET2.0中themes.Skins轻松实现网站换肤! 可能有些朋友还不是很清楚themes.skins.下面先介绍下themes.skins.. 一.简介: 一看Themes.Skins这 ...

  6. ASP.NET2.0雷霆之怒盗链者的祝福【月儿原创】

    ASP.NET2.0雷霆之怒盗链者的祝福 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/           时间:2007.3.28 所谓盗链就是指其他网站把我们 ...

  7. ASP.NET2.0轻松搞定统计图表【月儿原创】

    ASP.NET2.0轻松搞定统计图表 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/           时间:2007.3.27 本文讲述如何绘制条形图,折线图, ...

  8. ASP.NET2.0国际化/本地化应用程序的实现总结(多语言,多文化页面的实现)

    相关文章导航 Sql Server2005 Transact-SQL 新兵器学习总结之-总结 Flex,Fms3相关文章索引 FlexAir开源版-全球免费多人视频聊天室,免费网络远程多人视频会议系统 ...

  9. ASP.NET2.0轻松搞定统计图表

    本文讲述如何绘制条形图,折线图,柱形图,面积图等常见图形. 效果图: 手把手教程: 原理:OWC是Office   Web   Compent的缩写,即Microsoft的Office   Web组件 ...

最新文章

  1. C++ 多线程:条件变量 std::condition_variable
  2. 【Java Web前端开发】JavaScript高级
  3. 2021年新高考八省联考成绩查询辽宁,辽宁八省联考成绩什么时候出 辽宁八省联考成绩查询入口...
  4. Scala 隐式(implicit)详解
  5. 在.NET Core中使用Channel(一)
  6. 飞畅科技-专业交换机厂家解读市场对工业交换机产品的要求有哪些?
  7. 系统学Android从零开始,详细的Android学习指南
  8. 完全相同的4个小矩形如图所示放置_分享 | 你想知道的100个桥梁知识点!
  9. 高速缓冲存储器(Cache)
  10. 微型计算机接口部件的结构,微机接口课后习题解析.doc
  11. CCF201409-1 相邻数对
  12. 江湖救急!磁盘数据大救星TestDisk
  13. eros --- Windows Android真机调试
  14. Linux 网络编程 TCP/UDP编程
  15. 白话布隆过滤器(BloomFilter)
  16. 深度学习的黑魔法防御术:恶意样本(Adversarial Example) 的防御策略综述
  17. 快捷指令快速保存无水印视频和图集
  18. 23岁需要做到的事情
  19. 女孩做妻子前应知道的十件事
  20. 在文章右上角添加目录导航

热门文章

  1. getopt长参数(长选项)获取不到参数BUG
  2. 8行代码教你搞定导航控制器全屏滑动返回效果 ————转载
  3. Android实现连续并排的若干个TextView单击改变背景颜色达到选项卡Tab栏切换效果...
  4. cadence中元件所在库
  5. Android学习之Shared Preference
  6. Win2003环境下简单的安全配置
  7. Git 修改 proxy,解决代理导致的代码无法 push 或 pull 的问题
  8. Android permission 访问权限一览
  9. Gym - 100941G
  10. elasticsearch的cross_fields查询