书签 分享 收藏 举报 版权申诉 / 14

类型WebService的列车时刻表.docx

  • 文档编号:5015993
  • 上传时间:2023-05-07
  • 格式:DOCX
  • 页数:14
  • 大小:1.20MB

……………………中间div

………………………底部div

前台CSS样式文件Style.css放在主题目录下,列车时刻表显示主页面为index.aspx,项目的目录文件关系详情如下图所示:

3.2后台代码设计

1.点击查询按钮的响应事件:

protectedvoidbtnSearch_Click(objectsender,EventArgse)

{

//获取起始站TextBox的文本

stringstart=this.txtStart.Text.Substring(this.txtStart.Text.LastIndexOf("_")+1);

//获取终点站TextBox的文本

stringend=this.txtEnd.Text.Substring(this.txtEnd.Text.LastIndexOf("_")+1);

//实例化Web服务对象

TrainTimeWebServicet=newTrainTimeWebService();

//通过调用Web服务方法获取列车信息

DataSetds=t.getStationAndTimeByStationName(start,end,"");

this.pnlTrain.Visible=true;

this.gdvTrain.DataSource=ds;//显示车次数据

//gdvTrain.DataKeyNames=newString[]{"TrainCode"};

this.gdvTrain.DataBind();

}

 

2.GridView分页显示数据的PageIndexChanging事件

protectedvoidgdvTrain_PageIndexChanging(objectsender,GridViewPageEventArgse)

{

gdvTrain.PageIndex=e.NewPageIndex;//获取当前分页索引值

gdvTrain.DataBind();//重新绑定数据

}

 

3.3系统优化设计

在程序调试过程中已经完成基本功能,但是发现点击查询按钮时整个页

整个页面更新发生闪跳现象,这种情况下用户体验极不友好,经过参考相关资

料,了解到这样的问题可以通过AJAX(AsynchronousJavaScriptandXML)

异步刷新技术解决。

1.使用ScriptManager控件和UpdatePanel控件。

在aspx页面中放入控件:

ScriptManagerID="ScriptManager1"runat="server">

ScriptManager>

UpdatePanelID="UpdatePanel1"runat="server">

PanelID="pnlTrain"runat="server"Visible="false">

GridViewID="gdvTrain"runat="server"AutoGenerateColumns="False"CssClass="datable"AllowPaging="True"OnPageIndexChanging="gdvTrain_PageIndexChanging">

GridView>

Panel>

AsyncPostBackTriggerControlID="btnSearch"/>

UpdatePanel>

之后点击查询按钮页面实现了局部更新数据。

 

2.使用AJAXControlToolkit工具获取AJAX下拉站点数据。

AJAXControlToolkit工具包是微软免费提供的一个资源提供了多种ASP.NETAJAX控件,使用方便并且能创建各种丰富的AJAX功能,所以在此WebService列车时刻表的应用中也尝试使用AJAXControlToolkit工具。

前台控件使用的控件:

AutoCompleteExtenderID="AutoCompleteExtender1"runat="server"

ServiceMethod="GetCompletionList"UseContextKey="True"

TargetControlID="txtStart"MinimumPrefixLength="1">

AutoCompleteExtender>

LabelID="Label2"runat="server"Text="终点站"CssClass="L2">

Label>

TextBoxID="txtEnd"runat="server">

TextBox>

AutoCompleteExtender

ID="AutoCompleteExtender2"runat="server"ServiceMethod="GetCompletionList2"

UseContextKey="True"TargetControlID="txtEnd"MinimumPrefixLength="1">

AutoCompleteExtender>

后台对应的代码:

[System.Web.Services.WebMethodAttribute(),System.Web.Script.Services.

ScriptMethodAttribute()]

publicstaticstring[]GetCompletionList(stringprefixText,intcount,stringcontextKey)

{

RegexregEx=newRegex(string.Format("{0}[\\w]*[_][\\w]*",prefixText),RegexOptions.IgnoreCase|RegexOptions.Multiline|RegexOptions.IgnorePatternWhitespace);

RegexregEx1=newRegex(string.Format("[\\w]*[_]{0}[\\w]*",prefixText),RegexOptions.IgnoreCase|RegexOptions.MultilineRegexOptions.IgnorePatternWhitespace);

varstas=fromsinstationswhere(regEx.IsMatch(s)||regEx1.IsMatch(s))selects;

returnstas.ToArray();

}

 

AJAXControlToolkit使用效果图:

4系统存在的问题

本列车表时刻表查询系统使用的是第三方提供的免费Web服务,所以存在一些限制,在

一天内查询超过限制次数就会提示“免费用户24小时内访问超过规定数量”。

因此,如果是商业用途,可以向WebService服务方购买商业ID,以便获得更多更稳定

的Web服务。

8.总结

以前常听别人说ASP.NET开发主要是拖控件的,能学到的开发技术不是很深,所以,刚开始也不太喜欢ASP.NET,但真正使用它之后发现开发过程轻松有趣,各种各样的控件可以实现快速开发,如果只是局限于拖控件那么确实对技术增长没有帮助,但是ASP.NET也是需要后台的复杂的实现代码,如果愿意去专研也是会学到很多技术的,只能说ASP.NET就像一个非常出色的工具,它使懒惰的人更懒惰,让肯于实干的人得心应手。

此次实践让我感受颇多:

做ASP.NET开发其实是一件很有趣的事情。

虽然是一个小型的查询系统,但是也帮助自己简单了解WebService的使用流程,以及在ASP.NET开发中AJAX技术的应用。

同时我体会到:

熟练的编程能力,对知识运用的及其创新和团队的合作精神是做好一个系统的基础。

9.主要参考文献

1.刘乃琦郭小芳.ASP.NET应用开发与实践.人民邮电出版社.

2.杨树林,胡洁萍.ASP.NET程序设计案例教程.人民邮电出版社.2011

3.奚江华著,武海军改编.圣殿祭司的ASP.NET4.0专家技术手册.人民邮电出版社.2013

 

最终效果图:

 

设计过程截图:

 

 

 

备注:

如果自己有把握也可以选择周围的实际问题加以解决,比如你居住的小区物业管理系统、学校考试报名系统等。

1、网站论坛管理系统:

论坛主页面显示论坛首页信息、可以搜索对应的主题、游客可以浏览论坛、注册等功能;注册用户可以登录、修改密码、增加讨论主题、回复讨论等功能;管理员具有管理用户、删除主题、回复讨论等功能。

2、B/C网上商城:

根据你的实际情况选择你感兴趣的商品,如书籍、服装、电子产品等;要求实现会员注册、登录;商品浏览、查找、加入购物车等功能;管理员用户可在后台实现用户管理、商品管理、用户管理、订单管理等功能。

3、图书馆管理系统:

实现读者和管理员两类不同的用户;读者具有登录、查看个人信息、搜索书籍信息;借书、还书等功能;管理员具有读者管理、图书管理等功能。

4、基于WebService的列车时刻(航班查询)系统:

通过调用已有的WebService可以较方便地查询全国范围的列车时刻表(或航班时刻)。

5、校友信息系统:

设计一个本校的校友管理信息系统,校友可以注册、发表活动或话题、查找其它校友、上传图片、访问校友论坛;系统管理员有添加、删除、修改校友用户的各种权限。

6、高校工资管理系统:

学校系统管理员,管理相关人员的用户权限、密码等;人事处管理员可管理教师的职称等级(暂定助教、讲师、副教授、教授四个等级,每个等级又分三个级别一共12级工资标准),管理每个等级教师的基本工作量、课酬,基本薪酬等;教师只可以查询自己的工资。

7.在线考试系统:

学生通过学号和密码进入考试系统,考试将随机组卷生成单项选择题、简答题、判断题、填空题等客观题型,考试系统倒计时,考试时间到则强制提交考试结果,当然学生在考试过程中也可提前交卷。

教师借助系统可以自动对单项选择题和判断题(根据标准答案)评分并把结果写入数据库,其它题型(简答、填空)可另行设计适当界面进行评分,评分结果也要写入数据库,最后生成每个学生的总分汇总。

8、考试时钟:

可以上学院网站查阅天高工作室同学所作的考试时钟程序,用ASP.NET重写一个,或增强其功能。

9.设计一个本学院的信息网站:

集成内容发布、信息发布、会员系统等功能,并在首页实现动态显示当前最新新闻,管理员通过登陆后台可添加各模块子项目(新闻、通知等)。

10.网络相册的设计与实现:

用户通过注册后分享自己的图片,进行上传、下载图片,创建、删除目录,其它用户可以对图片发表评论等基本功能。

要求各页面之间交互性较好,使用JQuery等客户端技术。

配套讲稿:

如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

特殊限制:

部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

关 键  词:
WebService 列车时刻表
提示  冰点文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:WebService的列车时刻表.docx
链接地址:https://www.bingdoc.com/p-5015993.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2


收起
展开