1、 课程设计课程设计(综合实验综合实验)报告报告 ( 2012 - 2013 年度第二学期) 名 称: 网络综合实验 题 目: 列车时刻表查询程序 院 系: 计算机 班 级: 学 号: 学生姓名: 指导教师: 设计周数: 2 周 成 绩: 日期: 2013 年 6 月 9 日 一、一、 目的与要求目的与要求 1 任务:利用 Web Service 技术实现列车时刻表查询。 2 目的:学习在网络应用程序中创建和使用 Web 服务。Web Service 由于其跨平台的优越性,被越 来越多的网站所重用。了解其实现原理及使用方法,有利于了解未来的网络开发技术。 3 要求:利用 Web Service
2、技术,实现一个查询实时天气预报的网站,要求界面美观,方便易用; 通过课程设计学生应该具备初步分析、设计和开发网络应用软件的能力,具备分析与检查软件错误、解 决和处理实验结果的能力。 4 学生要求人数:1 人。 二、设计(实验)正文二、设计(实验)正文 1、实验内容 编写一个网站页,可供用户查询最新列车时刻表情况,可站到站查询、车次查询和途径站查询,合理 设计查询组合。基本工作过程如下: (1) 了解 Web Service 技术的原理和使用方法; (2) 寻找提供列车时刻信息的 Web 服务; (3) 利用 Web Service 完成查询网页与信息提供网站的链接; (4) 测试网页。 2、使
3、用工具 Visual Studio2010 ,ASP.NET,C# 3、实验原理 web service 发布后,客户端添加引用,之后 vs 实际上在此时已经在后台生成本地代理类。之后 看起来像是对 web service 的操作,实际上是对本地代理类的操作。代理类中处理网路访问逻辑,客户 端的使用就象操作本地类一样简单便捷。 客户端发出 web service 请求后,请求到达代理类,代理类处理请求从服务端获得 SOAP 数据包, 而后进行数据处理后转发客户端。 此中间涉及到的关于 SOAP,WSDL 等定义, 简单的可以理解为: SOAP 中定义了传输数据类型的格式和规则,而WSDL 则以
4、 XML 的形式定义了 web service 的消息和有关操 作,通过 http 传输协议进行数据传输。 4、实验步骤 (1)新建一个 ASP.NET 的网站,在解决方案资源管理器中单击右键,选择添加 web 引用,在 URL 中 添加 http:/ web 引用名为 train, 添加引用。 (2)因为提供 web service 的服务器上提供了几个让我们调用来进行查询的函数,它们的返回值要与所设 计的网站上的显示进行绑定,因此用到了 Repeater 控件,按照如下图所示的页面布局设计网页,添加页 面控件。 Repeater 控件的程序语句要在源代码中显示的写出。 网页的设计使用母板页
5、, 设计的主页面如下, 命名为 defalt.aspx. 将车次与函数返回值中的 TrainCode 相绑定,并在这一项中建立超链接,从而使在点击具体的车次时可 以在一个新的页面显示出车次的具体途径站查询。另外将始发站与函数返回值 FirstStation 绑定,终点 站与 LastStation 绑定,发车站与 StartStation 绑定,发车时间与 StartTime 绑定,到达站与 ArriveStation 绑定,到达时间与 ArriveTime 绑定,里程 KM 与 KM 绑定,历时与 UseDate 绑定。 (3)编写后台程序。 因为本实验要调用网上提供的web函数,首先要建立
6、调用函数的服务对象 train.TrainTimeWebService train = new train.TrainTimeWebService(); 由于函数的返回值是是 DataSet 类型,建立一个 DataSet 的变量接收返回的数据 DataSet ds = new DataSet(); 在页面加载时由Label1显示web函数getVersionTime()的返回值,显示“火车时刻表为第六次提速最新 列车时刻表,数据库最后更新:及时更新”,在Page_Load()函数中编写代码实现在第一次访问页面时 显示函数的返回值,具体代码是: protected void Page_Load(object sender, EventArgs e) if (this.IsPostBack = false) Label1.Te