C#三层架构实现报告_第1页
C#三层架构实现报告_第2页
C#三层架构实现报告_第3页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C#程序设计综合实验报告题目:核武器三层架构系另U:信息与控制学院班级学号:1530110222学生姓名:孟博维指导教师:李莹成绩:沈阳工学院2016年12月目录1实验题目12功能模块设计图13数据库设计14使用说明、主要运行界面和主要技术34.1 登录34.2 主界面44.3 定点打击54.4武器管理64.5目标地点65总结91实验题目核武器三层架构2功能模块设计图系统功能模块设计图如图2.1所示。图2.1系统功能模块图3数据库设计本系统数据库的表分为核武器库、管理员、打击地点、地点信息、正在打击,0个存储过程,0个触发器和15个查询语句。1、核武器库表存放所有武器种类的信息,包括:武器编号

2、、武器名称、打击范围、打击类型、打击地点、存储位置、架构时间、储存数量、武器造价、武器类型如表3.1所示。表3.1核武器库表名称数据类型是否为空说明nvarchar(50)Notnull主键,武命编勺武命名商、nvarchar(50)Notnull武命名商、打击范围nvarchar(50)Notnull打击范围打击类型nvarchar(50)Notnull打击类型打击地点nvarchar(50)Notnull打击地点存储位置nvarchar(50)Notnull存储位置架构时间datetimeNotnull架构时间储存数量intNotnull储存数量武命造价intNotnull武命造价武器类型

3、intNotnull武器类型2、管理员存放所有登陆的信息,包括:账号、密码、密匙如表表3.2管理员表3.2所示。名称数据类型是否为空说明nvarchar(32)Notnull密码nvarchar(32)Notnull密码密匙nvarchar(64)Notnull主键,密匙3、打击地点存放地点类型的信息,包括:地点编码、区域大小如表3.3所示。表3.3打击地点表名称数据类型是否为空说明地点编码nvarchar(50)Notnull主键,地点编码区域大小IntNotnull区域大小4、地点信息存放所有地点的信息,包括:地点编码、地点名称、地点特征、精度、纬度、偏移如表3.4所示。表3.4地点信息表

4、名称数据类型是否为空说明地点编码nvarchar(50)Notnull主键,地点编码地点名称nvarchar(50)Notnull地点名称精度IntNotnull精度纬度IntNotnull纬度偏移Intnull偏移5、止在刊击仔以所刊地点时侑息,包括:地点编俏、地点名杯、此召徉编p、此召徉名仞攻击编号如表3.5所示。表3.5地点信息表名称数据类型是否为空说明攻击编VIntNotnull主键,攻击编亏地点编码nvarchar(50)Notnull地点编码地点名称nvarchar(50)Notnull地点名称nvarchar(50)Notnull武命名商、nvarchar(50)Notnull武

5、命名商、4使用说明、主要运行界面和主要技术4.1登录使用说明:登录模块是本系统的唯一入口,也是第一道关卡。它的安全性要求最高,所有其它操作均要在本模块之后进行。它的主要作用在于验证用户输入的,账户名和密码已经账户名所对应的用户权限是否符合。只有当用户名、密码和权限都对应的时候,系统才会判断登陆用户的信息合法,才可以进行后续的操作,输入不合法的用户无法正常登陆系统。如图4.1所示。图4.1登录界面主要技术:登录模块主要利用数据库查询验证技术,只有输入数据库中对应存在的密匙和密码才能进行登陆。if(textBoxl.Text!="")密匙",textBoxl.Text

6、),newSqlParameterp=newSqlParameter("from管理员where密匙=匙and密码=密码",p);if(dr.Read()MessageBox.Show("登陆成功");button2.Visible=true;登陆失败,系统即SqlDataReaderdr=SqlHelper.ExecuteReader(CommandType.Text,"select*SqlParameter("密码",textBox2.Text);button3.Visible=true;button4.Visible=

7、true;elseMessageBox.Show("将关闭");timer1.Start();登陆失败,系统即将关闭");timer1.Start();)4.2 elseMessageBox.Show("主界面使用说明:登陆成功后进入主界面,选择功能按钮即可弹出对应功能并且隐藏功能选择按钮。如图4.2所示。图4.2主界面主要技术:按钮间的隐藏,和窗口之间的弹出及复制,包括重载调用等。DllImport("user32.dll",EntryPoint="FindWindow",CharSet=CharSet.Auto

8、)privateexternstaticIntPtrFindWindow(stringlpClassName,stringlpWindowName);DllImport("user32.dll",CharSet=CharSet.Auto)publicstaticexternintPostMessage(IntPtrhWnd,intmsg,IntPtrwParam,IntPtrlParam);publicconstintWM_CLOSE=0x10;定点打击使用说明:点击功能按钮之后弹出对应的窗体,功能都包括增删改查等功能。如图4.3所示。图4.3定点打击主要技术:按钮的隐藏和

9、显示,发起打击是三层架构下的发起打击函数的调用实现,撤销同上,刷新该表的功能则是查询攻击的函数。本界面中的武器编号可以点击,点击之后可以弹出武器信息界面,查看和修改武器的信息。publicDataTable查询打击(string攻击编号)(returnSqlHelper.GetDataSet(CommandType.Text,"select*from正在打击where攻击编号like攻击编号",newSqlParameter("攻击编号”,”+攻击编号).Tables0;publicbool发起打击(正在打击b)(SqlParameterp=(newSqlPara

10、meter("攻击编号",b.攻击编号),newSqlParameter("地点编码",b.地点编码),newSqlParameter("地点名称",b.地点名称),newSqlParameter("武器编号",b.武器编号),newSqlParameter("武器名称",b.武器名称);returnSqlHelper.ExecuteNonQuery(CommandType.Text,"insertinto正在打击(攻击编号,地点编码,地点名称,武器编号,武器名称)values(攻击编

11、号,酗点编码,酗点名称,器编号,器名称)",p)=0?false:true;publicSqlDataReader(SqlParameterp=(检测打击(正在打击b)newSqlParameter("攻击编号",b.攻击编亏),newSqlParameter("地点编码",b.地点编码),newSqlParameter("武器编号",b.武器编号);returnSqlHelper.ExecuteReader(CommandType.Text,"select地点名称,武器名称from正在打击where攻击编号=破击

12、编号and地点编码=您点编码and武器编号=:器编号",P);)publicbool撤销打击(string武器编号,Int32攻击编号,string地点编码)SqlParameterp2=newSqlParameter("攻击编号",攻击编号),newSqlParameter("武器编号",武器编号),newSqlParameter("地点编码",地点编码));returnSqlHelper.ExecuteNonQuery(CommandType.Text,"DELETEFROM正在打击WHER政击编号=欲击编号a

13、nd地点编码=您点编码and武器编号=武器编号",p2)=0?falsetrue;4.3 )武命官理使用说明:点击功能按钮之后弹出对应的窗体,功能都包括增删改查功能。如图4.4所示。图4.4武器管理主要技术:按钮的隐藏和显示,武器管理是三层架构下的武器管理函数的调用实现,其余按钮功能同上,当用户单击datagridview的表项时,会吧信息返回给各个textbox。4.4 目标地点使用说明:点击功能按钮之后弹出对应的窗体,功能都包括增删改查功能。如图4.5所示。publicboolvalidate核武器库(核武器库b)(returnSqlHelper.ExecuteReader(Co

14、mmandType.Text,"select*from核武器库where武器编号=中器编号",newSqlParameter("武器编号",b.武器编号).Read();publicboolCreate核武器库(核武器库b)(stringsql="insertinto核武器库(武器编号,武器名称,打击范围,打击类型,打击地点,存储位置,架构时间,储存数量,武器造价,武器类型)values(武器编号,武器名称,打击范围,打击类型,打击地点,存储位置,架构时间,储存数量,武器造价,武器类型)"SqlParameterp=(newSqlPa

15、rameter("武器编号",b.武器编号),newSqlParameter("武器名称",b.武器名称),newSqlParameter("打击范围",b.打击范围),newSqlParameter("打击类型",b.打击类型),newSqlParameter("打击地点”,b.打击地点),newSqlParameter("存储位置",b.存储位置),newSqlParameter("架构时间",b.架构时间),newSqlParameter("储存数量

16、",b.储存数量),newSqlParameter("武器造价",b.武器造价),newSqlParameter("武器类型",b.武器类型);returnSqlHelper.ExecuteNonQuery(CommandType.Text,sql,p)=0?false:true;publicSqlDataReaderDelete核武器库(核武器库b)(stringsql="deletefrom核武器库where武器编号=由器编号"SqlParameterp=(newSqlParameter("武器编号"

17、,b.武器编号),;returnSqlHelper.ExecuteReader(CommandType.Text,sql,p);publicSqlDataReaderupdate核武器库(核武器库b)(stringsql="update核武器库set武器名称=武器名称,打击范围=丁击范围,打击类型=丁击类型,打击地点=丁击地点,存储位置=雷储位置,架构时间=廖构时间,储存数量=御存数量,武器造价=殡器造价,武器类型=破器类型where武器编号=殡器编号"SqlParameterp=(newSqlParameter("newSqlParameter("ne

18、wSqlParameter("newSqlParameter("newSqlParameter("newSqlParameter("newSqlParameter("newSqlParameter("newSqlParameter("newSqlParameter("武器编号",b.武器编号),武器名称",b.武器名称),打击范围",b.打击范围),打击类型",b.打击类型),打击地点",b.打击地点),存储位置",b.存储位置),架构时间",b

19、.架构时间),储存数量",b.储存数量),武器造价",b.武器造价),武器类型",b.武器类型));returnSqlHelper.ExecuteReader(CommandType.Text,sql,p);)图4.5目标地点主要技术:按钮的隐藏和显示,目标地点是三层架构下的添加地点函数的调用实现,其余按钮功能同上。未作过多内容。publicbool插入地点(地点信息b)SqlParameterp=newSqlParameter("地点编码",b.地点编码),newSqlParameter("地点名称",b.地点名称),newSqlParameter("地点特征",b.地点特征),newSqlParameter("精度",b.精度),newSqlParameter("纬度",b.纬度),newSqlParameter("偏移",b.偏移);returnSqlHelper.ExecuteNonQuery(CommandType.Text,"insertinto地点信息(地点编码,地点名称,地点特征,精度,纬度,偏移)values(地点编码,地点名称,酗点特征,W度,,度,醐移)",p)=0?false:tru

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论