论文部分内容阅读
随着互联网的发展,人们对Web应用的要求越来越高。如今的Web应用在表现上需要符合统一的Web标准(HTML标准,CSS标准,JavaScript标准等等);在对外的接口上REST(即Representational State Transfer表述性状态转移)也逐渐成为跨HTTP的服务和接口的主导架构;在开发过程上(例如敏捷、Scrum),也对系统的快速开发、灵活性、快速对应变化有着越来越高的要求。国内某知名软件公司随着业务的不断扩张,正需要构建一个用作企业内部的项目管理平台的Web应用,以优化企业业务流程。但是,现在主流的.NET平台上的Web开发技术——ASP.NET Web Form和ADO.NET,在如今对Web应用开发要求不断提高的背景下,存在着灵活性差、开发成本高、周期长等缺点,已经不能够满足如今的企业对Web应用开发的需求。另一方面,微软平台的两项新技术ASP.NET MVC和ADO.NET Entity Framework(或称实体框架),在技术本身有着灵活、开发周期短、可重用性高等优点。但是,在真实项目中新技术还缺乏应用,并且对于Web系统来说,两项独立的技术并不是一个完整的解决方案。就此,本文首先对.NET平台下的主要技术进行研究,分析其工作原理和优缺点。通过研究和设计,在软件项目管理平台项目中,提出了基于三层的分层架构设计,将两项新技术结合的方案:以ASP.NET MVC框架为基础构建系统表现层,以Entity Framework框架为基础构建数据访问层形成一个完整的系统架构。通过此方案,将两项新技术在企业Web应用得到良好的应用,并在解决当前主流技术所存在的问题。然后,在软件项目管理平台的开发过程中,基于该解决方案,从数据访问层、业务逻辑层、表现层,自下而上的实现一个基于ASP.NET MVC和EntityFramework技术的、使用三层架构设计的、完整的Web应用。在具体实现过程中,本文进一步描述了如何应用新技术解决Web应用中普遍涉及的诸多细节问题,比如登录授权、输入验证、自定义控件、第三方控件的使用、系统操作日志、系统安全性、可测试性等等,并给出实现细节。从而构建一个结构清晰,耦合度低,能够快速开发,具有良好的可维护性和可扩展性的,符合当代需求的Web应用。最后,从软件项目管理平台的设计和实现过程中,总结基于用ASP.NET MVC和Entity Framework技术的三层架构设计解决方案,相比目前主流.NET平台下Web开发技术ASP.NET和ADO.NET而言的先进之处和所带来的效益。同时,也对新技术在应用中所存在的问题做以归纳和展望。