企业设备信息管理系统————————————————————————————————作者:————————————————————————————————日期:软件开发课程设计报告课题: 企业设备信息管理系统设计与开发一、课程设计的目的和意义 (2)二、需求分析ﻩ2三、系统设计 (4)四、数据库设计 (5)五、系统测试(运行界面)........................................................................................ 611六、小结ﻩ七、程序源代码 (11)一、课程设计的目的和意义目前仪器设备管理水平不是很高。
大多数仪器设备管理办法是仪器设备采购进来以后,将仪器设备的基本情况和相关信息登记存档,然后将档案存档。
以后档案基本就没人维护,如仪器设备位置变迁、检修情况、仪器设备当前运行状态等信息根本不会体现在仪器设备台帐上,即仪器设备跟踪信息不能及时体现在仪器设备档案上。
某些使用仪器设备管理系统的单位,对仪器设备的跟踪信息即使能体现在仪器设备档案上,但仪器设备的缺陷处理及仪器设备缺陷等功能没有实施。
整个仪器设备管理信息化仍处于较低水平。
本次课程设计就是为了方便仪器设备进行统计及管理工作,将管理任务分成小块,落实到个人并能随时查询仪器设备当前情况和历史情况,对仪器设备的可靠性分析有直接作用,使管理人员从手工计算、统计工作中解脱出来,提高的现代化管理水平。
二、需求分析本系统功能主要设计了对设备的管理,主要完成简单的对设备数据库增删查改。
对于支持该系统的数据库,建立了5张表,分别是设备表、设备借出情况表、可用设备情况表、设备维修情况表和员工表。
这对每一项功能,都有必要的驱动信息和功能上的约束。
以设备表为例,设备管理分为四部分:添加设备,删除设备,浏览设备,查询设备。
添加设备时应该能对一些有限制的信息做好正确的检查,录入的设备信息应包括设备编号、设备名称、品牌、购买时间、生产时间,并且在信息输入时应及时对信息的合法性进行检查;删除设备可以根据输入设备的名称进行删除;查询设备主要是对具有相关特征的设备信息进行查找;浏览设备是按照管理员的要求将用户所需的数据抽取出来自动生成报表,该项功能应该能够合理的抽取所需的信息集合,全面合理提供用户所需的数据。
本系统的功能层次图:图-1 功能层次图设备管理系统设备管理员工管理设备 借出情况 设备维修情况设备基本情况三、系统设计图2-设备E-R 图设备设备编号设备名称购买时间维修 员工员工编号员工姓名员工性员工年龄借用日期序号 维修序号 借用维修n m mn 品牌生产时间借四、数据库设计表1:device设备表序号列名数据类型长度主外键允许空说明1 de_no varchar 50 主键否设备编号2 de_name varchar 50 否设备名称3de_brand varchar 50否品牌4 de_btivarchar 50 是购买时间mevarchar 50 是生产时间5 de_ptime表2:lend_device设备借出情况表序号列名数据类型长度主外键允许空说明1 lend_num int 4主键否序号2de_no varchar 50 否设备编号3 de_name varchar 50 否设备名称4st_no varchar 50 否员工编号5 st_name varchar 50 否员工名称int 4 否借用天数6lend_days7lend_dvarchar 50 否借用日期ate表3:remian_device可用设备表序号列名数据类型长度主外键允许空说明1 remian_nint 4 主键否序号um2 de_no varchar 50 外键否设备编号3 de_name varchar 50 否设备名称4 de_conditivarchar 50 是设备状态on表4:repair_device设备维修情况表序号列名数据类型长度主键允许空说明1repair_numint 4 主键否序号2 st_no varchar 50 否维修员工编号50 外键否设备编号3 de_no varchar4destroy_date varchar 50 否损坏日期varchar50 是维修状态5 repair_condition表5:staff员工表序号列名数据类型长度主外键允许空说明1st_novarchar50 主键否员工编号varchar 50 否员工名称2 st_name3st_sex varchar 50否员工性别varchar 50 是员工年龄4st_age五、系统测试(运行界面)设备表查询●增加●修改●删除设备借出表●查询增加●修改●删除六、小结经过一周的课程设计,一个简单的企业设备管理信息系统设计完成了,但也正在这时我真正意识到所学知识的不足,可以说关于这方面的接触才刚刚开始,深有感触,无以言表。
关于本系统,虽然对企业设备管理信息进行了系统的基本创建,但我们不可忽略的是这个系统并不完美。
通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能算是学以致用,从而提高自己的实际动手能力和独立思考的能力。
我们在设计中遇到了很多问题。
这次课程设计中一个比较陌生的问题就是利用搭建三层架构来完成本次的实验,但是经过老师的视频讲解,一步一步跟着做,最后还是完成了。
总之,每一次课程设计不仅是我们学习的好机会,而且是我们锻炼实际动手能力的平台,虽然有难度的东西总会让人很抵触,比如在课设过程中有很多郁闷的时候,一个小小的错误一不小心就花去一大段时间,所以在这个过程中能够磨练人的意志与耐心。
七、程序源代码以设备表为例Model层代码、using System;namespaceMaticsoft.Model{///<summary>///device:实体类(属性说明自动提取数据库字段的描述信息)///</summary>ﻩ[Serializable]ﻩpublic partialclassdeviceﻩ{ﻩpublic device()ﻩ{}#region Modelprivatestring _de_no;ﻩﻩprivate string _de_name;privatestring _de_brand;ﻩprivate string_de_btime;ﻩprivatestring _de_ptime;ﻩ///<summary>ﻩ//////</summary>publicstringde_no{ﻩﻩﻩset{_de_no=value;}ﻩget{return _de_no;}}///<summary>ﻩ///ﻩ///</summary>ﻩpublic stringde_name{ﻩﻩset{ _de_name=value;}ﻩﻩget{return_de_name;}ﻩﻩ}ﻩ///<summary>///ﻩﻩ///</summary>ﻩpublicstring de_brandﻩﻩ{ﻩﻩﻩset{ _de_brand=value;}ﻩﻩﻩget{return_de_brand;}ﻩ}///<summary>ﻩ///ﻩ///</summary>publicstringde_btimeﻩﻩ{ﻩset{_de_btime=value;}get{return_de_btime;}ﻩ}ﻩ///<summary>ﻩ///ﻩ///</summary>ﻩpublicstring de_ptime{ﻩset{_de_ptime=value;}ﻩget{return_de_ptime;}ﻩ}ﻩﻩ#endregion Model}}DAL层代码,usingSystem;usingSystem.Data;usingSystem.Text;using System.Data.SqlClient;using Maticsoft.DBUtility;//Please addreferences namespace Maticsoft.DAL{///<summary>///数据访问类deviceﻩ///</summary>ﻩpublicpartialclassdeviceﻩ{ﻩﻩpublicdevice(){}#region BasicMethodﻩﻩ///<summary>///是否存在该记录///</summary>ﻩpublic bool Exists(stringde_no){ﻩStringBuilder strSql=new StringBuilder();ﻩﻩﻩstrSql.Append("select count(1)from device");strSql.Append("where de_no=@de_no ");ﻩﻩSqlParameter[] parameters ={ﻩﻩﻩﻩnewSqlParameter("@de_no",SqlDbType.VarChar,50) ﻩ};ﻩparameters[0].Value =de_no;ﻩﻩreturnDbHelperSQL.Exists(strSql.ToString(),parameters);}ﻩﻩ///<summary>ﻩ///增加一条数据///</summary>ﻩﻩpublic bool Add(Maticsoft.Model.devicemodel)ﻩ{ﻩStringBuilder strSql=newStringBuilder();ﻩﻩstrSql.Append("insertinto device(");ﻩstrSql.Append("de_no,de_name,de_brand,de_btime,de_ptime)");ﻩstrSql.Append("values (");ﻩﻩstrSql.Append("@de_no,@de_name,@de_brand,@de_btime,@de_ptime)");ﻩSqlParameter[] parameters = {ﻩﻩnew SqlParameter("@de_no",SqlDbType.VarChar,50),ﻩﻩﻩﻩﻩnew SqlParameter("@de_name",SqlDbType.VarChar,50),ﻩﻩnewSqlParameter("@de_brand", SqlDbType.VarChar,50), ﻩﻩﻩnew SqlParameter("@de_btime", SqlDbType.VarChar,50),ﻩﻩﻩnewSqlParameter("@de_ptime", SqlDbType.VarChar,50)};ﻩﻩparameters[0].Value=model.de_no;parameters[1].Value= model.de_name;ﻩﻩparameters[2].Value =model.de_brand;ﻩparameters[3].Value= model.de_btime;parameters[4].Value = model.de_ptime;ﻩintrows=DbHelperSQL.ExecuteSql(strSql.ToString(),parameters);ﻩif (rows > 0)ﻩﻩﻩ{ﻩﻩﻩreturn true;ﻩﻩ}ﻩelseﻩﻩﻩ{ﻩreturnfalse;}ﻩ}ﻩ///<summary>ﻩﻩ///更新一条数据ﻩ///</summary>ﻩpublic boolUpdate(Maticsoft.Model.devicemodel){ﻩStringBuilderstrSql=new StringBuilder();ﻩstrSql.Append("update deviceset");ﻩstrSql.Append("de_name=@de_name,");ﻩstrSql.Append("de_brand=@de_brand,");ﻩﻩstrSql.Append("de_btime=@de_btime,");ﻩstrSql.Append("de_ptime=@de_ptime");ﻩﻩﻩstrSql.Append(" where de_no=@de_no");ﻩﻩSqlParameter[]parameters={ﻩﻩﻩnewSqlParameter("@de_name", SqlDbType.VarChar,50),ﻩﻩﻩﻩnew SqlParameter("@de_brand", SqlDbType.VarChar,50),ﻩﻩnewSqlParameter("@de_btime", SqlDbType.VarChar,50), ﻩnewSqlParameter("@de_ptime",SqlDbType.VarChar,50),ﻩﻩnewSqlParameter("@de_no", SqlDbType.VarChar,50)};ﻩﻩparameters[0].Value = model.de_name;ﻩparameters[1].Value= model.de_brand;ﻩﻩﻩparameters[2].Value =model.de_btime;ﻩparameters[3].Value =model.de_ptime;ﻩparameters[4].Value= model.de_no;ﻩﻩint rows=DbHelperSQL.ExecuteSql(strSql.ToString(),parameters); ﻩﻩif (rows > 0)ﻩﻩ{ﻩreturn true;ﻩ}ﻩﻩﻩelseﻩﻩ{ﻩﻩﻩreturn false;ﻩﻩ}}///<summary>///删除一条数据ﻩﻩ///</summary>ﻩpublicboolDelete(string de_no)ﻩﻩ{ﻩﻩﻩﻩﻩStringBuilderstrSql=new StringBuilder();ﻩﻩstrSql.Append("deletefrom device ");ﻩﻩstrSql.Append("where de_no=@de_no ");ﻩﻩSqlParameter[]parameters ={ﻩﻩﻩﻩnewSqlParameter("@de_no", SqlDbType.VarChar,50)ﻩﻩ};ﻩparameters[0].Value = de_no;ﻩﻩint rows=DbHelperSQL.ExecuteSql(strSql.ToString(),parameters);ﻩif(rows>0)ﻩﻩ{ﻩﻩreturntrue;ﻩ}ﻩelseﻩﻩﻩ{ﻩﻩreturnfalse;ﻩﻩ}ﻩﻩ}ﻩﻩ///<summary>ﻩﻩ///批量删除数据ﻩ///</summary>ﻩpublic boolDeleteList(stringde_nolist )ﻩ{ﻩStringBuilder strSql=newStringBuilder();ﻩstrSql.Append("delete fromdevice");strSql.Append(" where de_no in ("+de_nolist+ ") ");ﻩint rows=DbHelperSQL.ExecuteSql(strSql.ToString());ﻩﻩif(rows>0)ﻩﻩﻩ{ﻩﻩﻩreturn true;ﻩ}ﻩﻩelseﻩﻩ{ﻩreturn false;ﻩ}}ﻩﻩ///<summary>ﻩ///得到一个对象实体ﻩﻩ///</summary>ﻩpublicMaticsoft.Model.device GetModel(string de_no)ﻩﻩ{ﻩﻩStringBuilderstrSql=newStringBuilder();ﻩstrSql.Append("selecttop 1 de_no,de_name,de_brand,de_btime,de_ptime fromdevice");ﻩﻩstrSql.Append("where de_no=@de_no");ﻩﻩﻩSqlParameter[] parameters = {ﻩnewSqlParameter("@de_no",SqlDbType.VarChar,50)ﻩﻩﻩ};ﻩﻩparameters[0].Value = de_no;ﻩﻩMaticsoft.Model.devicemodel=new Maticsoft.Model.device();ﻩﻩﻩDataSetds=DbHelperSQL.Query(strSql.ToString(),parameters);ﻩﻩif(ds.Tables[0].Rows.Count>0)ﻩﻩ{ﻩﻩreturnDataRowToModel(ds.Tables[0].Rows[0]);ﻩﻩﻩ}ﻩelseﻩﻩ{ﻩﻩreturn null;ﻩﻩ}ﻩﻩ}ﻩﻩ///<summary>ﻩﻩ///得到一个对象实体ﻩ///</summary>ﻩpublic Maticsoft.Model.deviceDataRowToModel(DataRowrow)ﻩ{ﻩMaticsoft.Model.device model=new Maticsoft.Model.device();ﻩﻩif(row!= null)ﻩﻩ{ﻩﻩif(row["de_no"]!=null)ﻩﻩ{ﻩﻩmodel.de_no=row["de_no"].ToString();ﻩ}ﻩﻩif(row["de_name"]!=null)ﻩﻩ{ﻩﻩﻩﻩmodel.de_name=row["de_name"].ToString();ﻩﻩ}ﻩﻩif(row["de_brand"]!=null)ﻩﻩﻩ{ﻩﻩmodel.de_brand=row["de_brand"].ToString();}ﻩif(row["de_btime"]!=null)ﻩ{ﻩﻩﻩﻩﻩmodel.de_btime=row["de_btime"].ToString();ﻩﻩﻩ}ﻩﻩﻩif(row["de_ptime"]!=null)ﻩﻩﻩ{ﻩﻩmodel.de_ptime=row["de_ptime"].ToString();ﻩﻩ}}ﻩﻩreturnmodel;ﻩ}///<summary>ﻩﻩ///获得数据列表///</summary>ﻩpublicDataSetGetList(string strWhere){ﻩﻩﻩStringBuilder strSql=new StringBuilder();ﻩﻩstrSql.Append("select de_no,de_name,de_brand,de_btime,de_ptime");ﻩﻩstrSql.Append(" FROM device ");ﻩif(strWhere.Trim()!="")ﻩ{ﻩﻩﻩstrSql.Append(" where "+strWhere);ﻩ}ﻩﻩﻩreturn DbHelperSQL.Query(strSql.ToString());ﻩﻩ}ﻩ///<summary>ﻩ///获得前几行数据ﻩ///</summary>public DataSetGetList(int Top,stringstrWhere,string){ﻩStringBuilder strSql=new StringBuilder();ﻩstrSql.Append("select");ﻩif(Top>0)ﻩﻩ{ﻩﻩﻩstrSql.Append("top "+Top.ToString());ﻩﻩ}ﻩﻩstrSql.Append(" de_no,de_name,de_brand,de_btime,de_ptime ");ﻩstrSql.Append("FROMdevice ");if(strWhere.Trim()!="")ﻩ{ﻩﻩﻩstrSql.Append("where "+strWhere);ﻩ}ﻩstrSql.Append("orderby "+ );ﻩreturnDbHelperSQL.Query(strSql.ToString());}///<summary>ﻩ///获取记录总数ﻩﻩ///</summary>public int GetRecordCount(string strWhere)ﻩﻩ{ﻩﻩStringBuilder strSql=newStringBuilder();ﻩﻩstrSql.Append("select count(1) FROMdevice ");ﻩif(strWhere.Trim()!="")ﻩﻩ{ﻩﻩstrSql.Append(" where "+strWhere);ﻩ}ﻩobjectobj =DbHelperSQL.GetSingle(strSql.ToString());ﻩﻩﻩif(obj == null)ﻩ{ﻩﻩreturn 0;ﻩﻩ}ﻩﻩelseﻩﻩ{ﻩﻩreturnConvert.ToInt32(obj);ﻩﻩﻩ}ﻩ}///<summary>ﻩ///分页获取数据列表ﻩ///</summary>ﻩpublicDataSetGetListByPage(string strWhere,stringorderby,intstartIndex, intendIndex){ﻩﻩStringBuilder strSql=new StringBuilder();ﻩﻩstrSql.Append("SELECT* FROM ( ");ﻩstrSql.Append(" SELECTROW_NUMBER() OVER(");if(!string.IsNullOrEmpty(orderby.Trim()))ﻩﻩ{strSql.Append("order by T." +orderby);ﻩﻩ}ﻩﻩelseﻩﻩ{ﻩstrSql.Append("order by T.de_nodesc");ﻩ}ﻩﻩstrSql.Append(")AS Row,T.* from device T ");ﻩif (!string.IsNullOrEmpty(strWhere.Trim()))ﻩﻩﻩ{ﻩﻩﻩstrSql.Append(" WHERE" + strWhere);ﻩ}strSql.Append(" ) TT");ﻩﻩﻩstrSql.AppendFormat(" WHERETT.Rowbetween{0}and {1}", startIndex, endInd ex);ﻩreturn DbHelperSQL.Query(strSql.ToString());ﻩ}ﻩﻩ/*/// <summary>ﻩ///分页获取数据列表ﻩ///</summary>public DataSetGetList(int PageSize,int PageIndex,string strWhere){ﻩSqlParameter[] parameters={ﻩﻩnew SqlParameter("@tblName", SqlDbType.VarChar,255),ﻩﻩnew SqlParameter("@fldName", SqlDbType.VarChar,255),ﻩﻩﻩﻩnew SqlParameter("@PageSize", SqlDbType.Int),ﻩﻩﻩﻩnew SqlParameter("@PageIndex", SqlDbType.Int),ﻩﻩﻩﻩnew SqlParameter("@IsReCount", SqlDbType.Bit),ﻩﻩnew SqlParameter("@OrderType", SqlDbType.Bit),ﻩﻩﻩnewSqlParameter("@strWhere", SqlDbType.VarChar,1000),ﻩ};ﻩﻩparameters[0].Value ="device";ﻩﻩparameters[1].Value="de_no";ﻩparameters[2].Value=PageSize;ﻩparameters[3].Value= PageIndex;ﻩparameters[4].Value=0;ﻩparameters[5].Value =0;parameters[6].Value =strWhere;ﻩﻩreturn DbHelperSQL.RunProcedure("UP_GetRecordByPage",parameters,"d s");ﻩ}*/ﻩﻩ#endregion BasicMethodﻩ#region ExtensionMethod#endregion ExtensionMethodﻩ}}BLL层代码,usingSystem;usingSystem.Data;usingSystem.Collections.Generic;using Maticsoft.Common;usingMaticsoft.Model;namespaceMaticsoft.BLL{ﻩ///<summary>ﻩ///device///</summary>publicpartial class deviceﻩ{ﻩprivatereadonly Maticsoft.DAL.device dal=newMaticsoft.DAL.device();publicdevice()ﻩﻩ{}ﻩ#region BasicMethodﻩ///<summary>///是否存在该记录///</summary>public boolExists(string de_no){ﻩﻩreturndal.Exists(de_no);ﻩ}ﻩ///<summary>ﻩﻩ///增加一条数据ﻩﻩ///</summary>ﻩpublicboolAdd(Maticsoft.Model.devicemodel)ﻩ{ﻩﻩreturndal.Add(model);ﻩ}ﻩﻩ///<summary>ﻩ///更新一条数据///</summary>publicboolUpdate(Maticsoft.Model.devicemodel)ﻩ{ﻩﻩﻩreturn dal.Update(model);ﻩ}///<summary>ﻩ///删除一条数据///</summary>ﻩpublicboolDelete(string de_no)ﻩ{ﻩﻩﻩreturn dal.Delete(de_no);ﻩ}ﻩ///<summary>ﻩﻩ///删除一条数据///</summary>ﻩpublic bool DeleteList(string de_nolist )ﻩ{ﻩﻩreturndal.DeleteList(de_nolist );ﻩ}ﻩﻩ///<summary>ﻩ///得到一个对象实体ﻩ///</summary>ﻩﻩpublic Maticsoft.Model.deviceGetModel(string de_no){ﻩﻩﻩreturndal.GetModel(de_no);ﻩﻩ}ﻩ///<summary>///得到一个对象实体,从缓存中ﻩ///</summary>ﻩpublic Maticsoft.Model.device GetModelByCache(stringde_no)ﻩ{ﻩﻩstring CacheKey= "deviceModel-" + de_no;ﻩobject objModel= Matmon.DataCache.GetCache(CacheKey);ﻩﻩif(objModel == null)ﻩﻩ{ﻩtryﻩﻩ{ﻩﻩﻩﻩobjModel=dal.GetModel(de_no);ﻩif(objModel != null)ﻩﻩ{ﻩﻩﻩﻩint ModelCache=Maticsoft.Common.ConfigHelper.GetConfigInt("ModelC ache");ﻩﻩMaticsoft.Common.DataCache.SetCache(CacheKey, objModel, DateTime.Now.AddMinutes(ModelCache), TimeSpan.Zero);ﻩﻩﻩﻩ}ﻩ}ﻩﻩﻩcatch{}ﻩﻩ}ﻩﻩreturn(Maticsoft.Model.device)objModel;ﻩ}///<summary>///获得数据列表ﻩ///</summary>public DataSetGetList(string strWhere)ﻩ{returndal.GetList(strWhere);ﻩ}///<summary>ﻩ///获得前几行数据ﻩﻩ///</summary>ﻩpublicDataSet GetList(int Top,string strWhere,string){ﻩﻩreturn dal.GetList(Top,strWhere,);ﻩ}ﻩﻩ///<summary>ﻩ///获得数据列表ﻩ///</summary>publicList<Maticsoft.Model.device>GetModelList(string strWhere)ﻩﻩ{ﻩDataSet ds = dal.GetList(strWhere);ﻩreturnDataTableToList(ds.Tables[0]);}///<summary>ﻩ///获得数据列表ﻩ///</summary>ﻩﻩpublic List<Maticsoft.Model.device> DataTableToList(DataTabledt)ﻩ{ﻩﻩList<Maticsoft.Model.device>modelList= newList<Maticsoft.Model.device>();ﻩint rowsCount= dt.Rows.Count;ﻩﻩif(rowsCount > 0){ﻩMaticsoft.Model.devicemodel;ﻩﻩﻩﻩfor (intn = 0;n < rowsCount;n++)ﻩﻩﻩ{ﻩﻩﻩmodel= dal.DataRowToModel(dt.Rows[n]);ﻩﻩif(model!=null)ﻩﻩ{ﻩﻩﻩmodelList.Add(model);}ﻩ}ﻩﻩﻩ}ﻩﻩﻩreturn modelList;ﻩ}///<summary>ﻩ///获得数据列表ﻩﻩ///</summary>public DataSetGetAllList(){ﻩreturn GetList("");ﻩ}ﻩ///<summary>ﻩ///分页获取数据列表ﻩ///</summary>ﻩpublicintGetRecordCount(string strWhere){ﻩﻩreturndal.GetRecordCount(strWhere);ﻩﻩ}ﻩ///<summary>ﻩ///分?页?获?取?数簓据Y列表括?///</summary>ﻩﻩpublic DataSet GetListByPage(string strWhere,string orderby, int startIndex,int endIndex)ﻩ{returndal.GetListByPage( strWhere, orderby, startIndex,endIndex);}ﻩ///<summary>ﻩ///分?页?获?取?数簓据Y列表括?ﻩﻩ///</summary>ﻩﻩ//public DataSetGetList(intPageSize,int PageIndex,string strWhere)//{ﻩﻩ//return dal.GetList(PageSize,PageIndex,strWhere);ﻩ//}ﻩ#endregion BasicMethodﻩﻩ#regionExtensionMethodﻩ#endregion ExtensionMethodﻩ}}Web层的List页面代码<%@PageTitle="设备管理Language="C#"MasterPageFile="~/MasterPage.maste r"AutoEventWireup="true"CodeBehind="List.aspx.cs"Inherits="Maticsoft.Web.device.List" %><asp:ContentID="Content1"ContentPlaceHolderID="head"runat="server"><script language="javascript"src="/js/CheckBox.js"type="text/javascript"></script></asp:Content><asp:ContentID="Content2"ContentPlaceHolderID="ContentPlaceHolder1" runat="server"><!--Title --><!--Title end--><!--Add --><!--Addend --><!--Search--><table style="width: 100%;"cellpadding="2"cellspacing="1"class="border"><tr><tdcolspan="3"><asp:HyperLinkID="HyperLink1"runat="server"NavigateUrl="~/device/Add.aspx">添加新设备</asp:HyperLink></td></tr><tr><td style="width: 80px"align="right"class="tdbg"><b>关键字:</b></td><tdclass="tdbg"><asp:TextBox ID="txtKeyword"runat="server"></asp:TextBox>&nbsp; &nbsp;&nbsp;<asp:ButtonID="btnSearch"runat="server"Text="查询" OnClick="btnSearch_Click"></asp:Button></td><tdclass="tdbg"></td></tr></table><!--Search end--><br/><asp:GridView ID="gridView"runat="server"AllowPaging="True" Width="100%"CellPadding="3"OnPageIndexChanging="gridView_PageIndexChanging"BorderWidth="1px"DataKeyNames="de_no"OnRowDataBound ="gridView_RowDataBound"AutoGenerateColumns="false"PageSize="10"RowStyle-HorizontalAlign="Center"OnRowCreated="gridView_OnRowCreated"><Columns><asp:TemplateField ControlStyle-Width="30"HeaderText="选择"><ItemTemplate><asp:CheckBox ID="DeleteThis"onclick="javascript:CCA(this);"runat="server"/></ItemTemplate></asp:TemplateField>ﻩ<asp:BoundFieldDataField="de_no"HeaderText="de_no"SortExpression="de_no" ItemStyle-HorizontalAlign="Center"/>ﻩ<asp:BoundField DataField="de_name"HeaderText="de_name"SortExpression="d e_name"ItemStyle-HorizontalAlign="Center"/>ﻩ<asp:BoundField DataField="de_brand"HeaderText="de_brand"SortExpression="de_brand"ItemStyle-HorizontalAlign="Center"/><asp:BoundField DataField="de_btime"HeaderText="de_btime"SortExpression="de_btime"ItemStyle-HorizontalAlign="Center"/>ﻩ<asp:BoundField DataField="de_ptime"HeaderText="de_ptime"SortExpression="de_ptime"ItemStyle-HorizontalAlign="Center"/><asp:HyperLinkField HeaderText="详细"ControlStyle-W idth="50"DataNavigateUrlFields="de_no"DataNavigateUrlFormatString="Show.aspx?id={0}"Text="详细"/><asp:HyperLinkField HeaderText="编辑-"ControlStyle-Width="50"DataNavigateUrlFields="de_no"DataNavigateUrlFormatString="Modify.aspx?id={0}"Text="编辑"/><asp:TemplateField ControlStyle-Width="50"HeaderText="删除"Visible="false"><ItemTemplate><asp:LinkButton ID="LinkButton1"runat ="server"CausesValidation="False"CommandName="Delete"Text="删除"></asp:LinkButton></ItemTemplate></asp:TemplateField></Columns></asp:GridView><tableborder="0"cellpadding="0"cellspacing="1"style="width:100%;"><tr><tdstyle="width:1px;"></td><tdalign="left"><asp:Button ID="btnDelete"runat="server"Text="删除"OnClick="btnDelete_Click"/></td></tr></table></asp:Content><%--<asp:ContentID="Content3"ContentPlaceHolderID="ContentPlaceCheckright"runat ="server"></asp:Content>--%>。