近来工作比较紧张,一直想写一些东西,无奈没有时间,现在开发的市移动wap论坛终于告一段落,现在将开发过程简单记录一下,以备日后参考,都是一些简单的使用过程,可为初次接触wap开发的提供一点点参考,高手可以忽略。
开发工具:vs2008 模拟器:vs自带仿真管理器 framework版本:2.0
一。配置环境:
vs2008中已经没有了新建wap的选项,所需的wap模板需要从网上下载:
下载地址:http://www.brsbox.com/filebox/down/fc/911fb64660cbf75f42146ac021d642fe,这是我的网络硬盘,下载下来是一个ASPNETMobileTemplates.rar的文件,根据里面的说明将文件拷贝到所需的文件夹。
模拟器可用openware((官方免费注册下载地址)http://developer.openwave.com/dvl/tools_and_sdk/phone_simulator/),也可用vs自带的设备仿真器(要先安装ActiveSync,),在工具—设备仿真管理器—选择pocket pc 2003中的pocket pc 2003 se仿真器—右键点解连接,然后再右键点击插入底座,运行后即可使用,不过在仿真管理器中地址不要用local,要用本机ip地址。
二。建立数据库:
数据库采用sqlserver,建立一个名为wapDB的数据库,如下图:
然后添加一个用户表userinfo,如下图:
为数据库添加一条记录,如下图:
建立表document,用来存储发布的文章,表结构如下图:
先为document表添加20条数据,用来显示,如下图:
至此,数据库建立完毕,下面我们将采用vs2008来具体开发。
三。建立工程,开始开发:
首先,我们建立一个testWap的项目,如下图:
将新建项目默任生成的default.aspx删除,新建一个login.aspx的mobile web form模板(在第一步环境配置中按照说明将ASPNETMobileTemplates.rar中的文件拷贝到各个文件夹后,就会在新建项目中最下面的模板中显示mobile模板了),如下图:
建立好以后,按照上述方法再添加一个index.aspx的文件。
至此,我们所需的文件已经全部建立完成,login.aspx用来登录,登录后到index.aspx页面,此页面用来分页显示document文章表中的内容,并且可以添加文章记录。(注意,做好网页后,需要在记事本中将我们刚才建立的login.aspx、index.aspx打开重新保存一下,保存编码改为utf-8,覆盖原文件即可,这样做是因为项目采用utf-8编码,如果不这样的话,页面含有中文的话就会显示为乱码。),如下图:
然后开始编码,具体编码和asp.net中的编码过程一样,不同的就是换成了mobile控件,这里需要注意的vs下开发wap不支持可视化设计,我们只能在后台手工编码,当添加<mobile>控件的时候,只要打上<m就会出现你所需要的mobile控件,mobile控件的具体有哪些和都有什么属性请参考其他文档,日后若有时间,我会将mobile控件的使用说明详细介绍一下,这里给大家引荐一个网址,这里面有mobile控件的介绍和使用说明,http://www.wapkf.com/article/aspnet-wap/Article_005_3.html
我们这里只用到了objectlist控件和textbox、textview控件以及command、Label控件,command控件其实就是button按钮,在mobile里叫command。
这里我们建立三个文件:
login.aspx:登录页面
index.aspx:分页显示文章页面,带有快速发表
view.aspx:显示文章具体内容页面
三个页面源代码:
login.aspx 前台代码具体如下:
- <%@ Page Language="C#" AutoEventWireup="true" Inherits="testWap.login" Codebehind="login.aspx.cs" %>
- <%@ Register TagPrefix="mobile" Namespace="System.Web.UI.MobileControls" Assembly="System.Web.Mobile" %>
- <html xmlns="http://www.w3.org/1999/xhtml" >
- <body>
- <mobile:Form id="Form1" runat="server"> <!--表单-->
- <mobile:Label ID="z1" Runat="server" Font-Size="Large" ForeColor="#3333cc">登录窗口</mobile:Label>
- <!--lbl_out:信息标签,初始隐藏,登录失败后或退出系统时显示信息-->
- <mobile:Label ID="lbl_out" Runat="server" ForeColor="Red" Visible="false"></mobile:Label>
- 用户名:<br />
- <mobile:TextBox ID="tb_User" Runat="server" Size="10" ></mobile:TextBox><!--用户名输入框:tb_User-->
- 密码:<br />
- <mobile:TextBox ID="tb_Pwd" Runat="server" Size="10" Password="True"></mobile:TextBox><!--密码输入框:tb_Pwd-->
- <mobile:Command ID="Button1" Runat="server"