基于LINQ与Ajax技术办公自动化系统.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于LINQ与Ajax技术办公自动化系统

基于LINQ与Ajax技术办公自动化系统   摘要:论文应用三层架构的开发思想提出了系统架构方案,分析并完成了办公自动化系统的功能设计和数据库设计,着重阐述了LINQ 及Ajax技术在系统中的作用和用法,对类似的系统开发有一定的参考价值。   关键词:办公自动化;LINQ;Ajax   中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)07-1476-02   传统的三层架构被广泛的应用与.NET平台下的WEB开发和WINFORM开发,以前的数据访问层需要开发者自己手工编写业务实体及业务实体方法,里面夹杂着大量的SQL语句,微软的LINQ技术改进现有开发模式下面向数据库操作的问题,使得面向对象和数据库完美结合。   1 办公自动化系统需求分析及数据库设计   办公自动化系统是一个基于Web的三层结构应用系统,它采用了LINQ和Ajax技术,是从性能和伸缩性角度着重考虑如何合理组合技术,优化各个功能模块的设计。办公自动化系统共分为4个功能模块:a.管理特区,b.个人办公室,c.信息共享区,d.人力资源管理。   根据上述模块的功能设计数据库,应该包括如下13张表:短信息表、用户基本信息表、日程安排表、考勤时间设置表、考勤表、部门表、公告表、绩效表、招聘管理表、培训管理表、工资公式设置表、工资管理表、邮件服务器设置表。另外本系统使用了.NET提供的几个功能:个性化设置、用户角色设置等,这些功能由系统自带的数据库ASPNETDB保存所需要的数据。   2 系统具体实现   2.1 系统总体架构   系统分三层:数据访问层、业务逻辑层、表示层。其中数据访问层包括实体类和Data Context类,通过Data Context类操作实体类而达到操作表的目的,数据访问层通过LINQ技术实现。业务逻辑层通过引用数据访问层实现业务逻辑并处理表示层的输入[1]。表示层负责与用户交互,运用了Ajax技术。在visual studio2010中具体实现这三层结构,可以这样做:在空白解决方案中分别添加名为BLL、DAL的两个类库项目,然后再添加一个ASP.NET web应用程序的项目,命名为WebUI,其中DAL为数据访问层,BLL为业务逻辑层,WebUI为表示层。最后在解决方案资源管理器中,添加各项目间的引用。   2.2 DAL层的实现   本系统使用LINQ to SQL技术来实现数据访问层,因此在项目中必须添加一个数据库连接,当创建好连接后,应该将数据表的信息映射到程序中来,可以向本项目中添加LINQ to SQL Classes项,然后将上面建立的13张表拖到设计界面,最后在App _Code目录下的DataClasses.design.cs文件,该文件中包含DataClassesDataContext类的定义,此类称为“数据连接上下文”,它包括所有所有的映射实体类,对应每个表的每个字段,还包括提交数据实体的方法,在添加数据时,使用InsertOnSubmit方法将新数据添加到实体中,使用SubmitChanges方法提交数据发生的变化。   2.3 BLL层的实现   业务逻辑层一般是编写若干个业务类,然后在各个业务类中添加业务方法来实现。比如绩效管理子模块的实现,就可以通过添加一个类CheckM,在该类中添加若干实现绩效管理功能的业务方法。限于篇幅,以下只以查询员工考核记录这个功能的实现为例,来介绍BLL层及WebUI层的实现。查询员工考核记录可以按输入的姓名进行模糊查询,故在CheckM类中添加如下业务方法:   其中,IQueryable是LINQ查询结果的返回类型,表示对未指定数据类型的特定数据源的查询进行计算[2]。IQueryable接口可实现查询结果集的遍历,可以直接绑定在ObjectDataSource数据源控件上。Check是对应Check表的实体类,而Checks则为Check类的集合。SqlMethods.Like方法是用来模糊查询的,其第二个参数为查询关键词。   此外,WebUI层要实现自动输入姓名功能,需要在CheckM类中再添加如下业务方法,根据参数使用模糊查询在用户基本信息表中查询出所有符合条件的用户姓名:   public string[] GetNameList(string name){……}   2.4 WebUI层的实现   要实现查询考核记录的功能,要在页面上添加一个文本框控件(用来输员工姓名的)、一个查询按钮、和一个GridView控件(用来显示考核记录的)。为了能够无代码实现查询操作,需为GridView建立对象数据源,数据源选择上述CheckM的GetChecksbyName方法,参数值为文本框的Text属性值。   另外为了查询时页面无刷新,可以讲上述控件

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档