- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第13章 AS NET微型项目实例——单位换算器
《商务网站设计与开发》
温浩宇
西安电子科技大学
第13章 微型项目实例——单位换算器
内容
13.1 需求描述
对编程语言语法的掌握虽然是学习程序设计的必经之路,但要想真正掌握开发技术,就必须要通过大量编程实践来达到。
需求描述:虽然国际上有重量的标准公制单位,包括克、千克、吨等,但很多国家在市场上还保留了传统的度量单位,比如中国有市斤、市两等,欧美使用磅、盎司等。
1千克(kg)=2.205磅(lb)
1磅(lb)=0.454千克(kg)
1磅(1b)=16盎司(oz)
1盎司(oz)=28.350克(g)
1吨(t)=1000千克(kg)
1长吨(long ton)=1.016吨(t)
13.1 需求描述
功能方面,可以实现多种重量单位(包括公制、英制等)直接的相互换算。
界面方面,用户可以任意选择换算前后的单位,程序根据用户输入的换算前的数量计算出换算后的数量并显示在页面中。
性能方面,虽然用Javascript实现会有更好的运行效率,但为了学习基于ASP.NET的页面开发技术,系统将尽可能优化前后台的数据传输以保障运行效率。
系统应有良好的可扩充性,可以容易地加入更多的重量单位。
通过这个项目练习Web页面的开发,提高综合应用开发能力。
13.2 详细设计
作为一个具有特定功能的程序,下面分别列出界面设计和逻辑设计的思路。
界面设计:界面中,通过输入框输入原单位的数值,通过两个下拉列表分别让用户选择原单位和目标单位,用户点击“换算”按钮后在目标单位显示出相应的数值。
13.2 详细设计
逻辑设计:程序的核心逻辑是根据原单位和目标单位的比例进行数值计算,而多个重量单位之间的任意换算需要一个换算矩阵来描述。
吨
千克
克
市斤
磅
盎司
1吨
1
1000
1000000
2000
2204.6
35273.9619496
1千克
0.001
1
1000
2
2.2046
35.2739619
1克
0.000001
0.001
1
0.002
001市斤
0.0005
0.5
500
1
1.1023
17.636981
1磅
0.000454
0.4536
453.59237
0.9072
1
16
1盎司
0028.3495231
280.0625
1
13.3 代码编写
对应上述设计思路,可以将代码分为两个部分:一部分负责与用户交互的界面,代码在.aspx文件中;另一部分负责程序的逻辑,代码在.aspx.cs文件中。
在编写代码的过程中,通常是先通过可视化的开发方式“画”出界面,然后再编写相应的逻辑代码。但在开发实践中,不应该写出大量代码后才进行调试,而是随着代码的编写不断地进行测试运行,以便及时发现错误并进行修改。在基于ASP.NET的开发过程中,界面和逻辑两部分需要配合才能运行。
(1)创建网站项目及文件
(2)基本页面元素设计
(3)填充“原单位”下拉列表Items
(4)填充“目标单位”下拉列表Items
(5)响应“换算”按钮点击事件
(6)用户输入验证
13.4 完整的源代码
项目中converter.aspx文件源代码如下:
form id=form1 runat=server
asp:TextBox ID=tbOriginalValue runat=server ValidationGroup=1/asp:TextBox
asp:DropDownList ID=ddlOriginalUnit runat=server ValidationGroup=1
asp:ListItem Value=1000000吨/asp:ListItem
asp:ListItem Value=1000千克/asp:ListItem
……
/asp:DropDownList
asp:Button ID=btConvert runat=server onclick=btConvert_Click Text=换算 ValidationGroup=1 /
……
asp:ValidationSummary ID=ValidationSummary1 runat=server ValidationGroup=1 /
asp:CompareValidator ID=CompareValidator1 runat=server
ControlToCompare=ddlOriginalUnit ControlToValidate=ddlTargetUnit
文档评论(0)