仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 597|回复: 7
打印 上一主题 下一主题

[学习教程] ASP.NET网站制作之在.NET下多层架构企业办理体系的开辟

[复制链接]
逍遥一派 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:42:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
我之所以想学。NET,是因为一直觉的BILLGATES好厉害,希望有一天能去微软,虽然现在还距离遥远,呵呵:)架构  摘要跟着.NET2.0的公布,在.NET下用多层架构来构建企业办理体系也愈来愈便利。本文以某外洋商业公司的办理体系为背景,先容在.NET平台下,接纳多层架构构建企业办理体系。

  关头词.NET;单位测试;B/S架构

  弁言

  .NET框架是微软开辟出的新一代开辟平台。同意使用程序经由过程Internet举行通信和共享数据,而不论所接纳的是哪一种操纵体系、设备或编程言语。本文先容的办理体系是在.NET平台下开辟的,以极限编程的开辟头脑,接纳了面向工具开辟、B/S架构、ASP.NET、C#和主动化测试工具CSUnit。

  成绩剖析

  本体系为外洋的某商业公司开辟,对公司的推销、发卖、库存等各个商业环节举行办理。该公司在外洋,它的供给商在国际,而客户都是外洋的公司。公司、供给商、客户今朝都能够毗连Internet,公司外部有局域网,对外次要经由过程ADSL高速毗连Internet。

  在对公司的营业需求举行了细心的剖析后,我们以为全部体系应该包括以下的功效:可以实时同供给商举行交换,并对供给商的产物临盆进度举行跟踪;收到供给商发来的产物后,能够对这些产物举行库存办理,并随时懂得产物的库存情况;能够实时同客户举行交换,并对客户发来的定单情况举行跟踪;可以对用户举行权限把持,进步体系的可控性和平安性;新体系要界面友爱、数据传输速率较快、易用性和扩大性强,等等。

  体系开辟形貌

  依据后面的体系需乞降功效剖析,体系次要分为以下几个部分:
  
  ⑴基础设置办理:包含职员办理模块――用于创建和保护利用体系的用户,公司办理模块――保护体系触及到的客户和供给商信息,产物办理――增加、修正、删除和查询产物信息。

  ⑵供给办理体系:由于公司的供给商次要在国际,体系接纳中文界面,包含对推销定单的办理模块,临盆进度办理模块,发货批次办理模块,报表办理模块和交换信息办理模块。

  ⑶发卖办理体系:该子体系卖力与客户的交换,包含客户询价办理模块,客户定单办理模块,临盆信息查询模块,质量信息反应体系和报表办理模块。

  ⑷库存办理体系:对公司的库存情形举行保护,包含库房基础设置模块,库房产物办理模块,报表办理模块。

  体系接纳三层的系统布局,数据库接纳MicrosoftSQLServer2000,编程言语为C#和ASP.NET,Web页面接纳ASP.NET、codebehide代码,背景程序由C#编写。除Web暗示层外,另有Model层、数据会见层DAL、营业逻辑层BLL,主动化测试层UT,等等。

  DAL卖力数据库的数据存取,BLL经由过程挪用DAL层的办法来完成营业需求,Web层经由过程挪用BLL的办法来完成与用户的交互,UT层卖力Model层、DAL层和BLL层的单位测试,Model供应数据实体类供Web、BLL、DAL挪用,各层之间的干系如:





  DAL卖力与数据库的交互,为了进步保护性,接纳OOP的计划头脑,只要BLL层能够间接挪用DAL层类中的办法,不成以跨层挪用。数据库的毗连字段信息安排在Web.config文件中,比方:要毗连SQLSERVER数据库,设置以下:

<addkey=”MSSQLConnString”value=”server=(local);userid=sa;password=pwd;
database=dbEnt”/>
  关于DAL,数据会见大概对照频仍,必要常常举行数据库的毗连和封闭操纵,因而体系没有接纳ADO.NET,利用DataReader工具前往数据以进步使用程序的功能并削减体系开支。示比方下:

publicstaticSqlDataReaderExecuteReader(stringconnString,CommandTypecmdType,stringcmdText,paramsSqlParameter[]cmdParms)
SqlCommandcmd=newSqlCommand();
SqlConnectionconn=newSqlConnection(connString);
try
{
 PrepareCommand(cmd,conn,null,cmdType,cmdText,cmdParms);
 SqlDataReaderrdr=cmd.ExecuteReader(CommandBehavior.CloseConnection);
 cmd.Parameters.Clear();
 returnrdr;
}
catch
{
 conn.Close();
 throw;
}
}
  BLL层的功效次要包含发卖办理、推销办理、库存办理、基础设置办理、产物办理、质量办理、财政办理等方面,由多个分歧的类相互共同完成庞大的营业逻辑。

  UT层卖力对BLL、DAL和Model举行单位测试,依照XP和TDD的头脑,先编写单位测试类,后入手下手类办法的编写。经由过程测试来引导程序代码的开辟,单位测试的经由过程就是类办法的完成。UT层的布局相似DAL,BLL等,针对分歧的类创建响应的测试单位类。UT的布局如:

  WEB层是间接与用户交互的层面,经由过程codebehind代码,该层间接挪用BLL层的办法来完成用户的营业需求,并将了局显现在Web页面。由于公司服务器在英国伦敦,可是良多用户其实不在英国,要思索的成绩包含:

  ⑴平安性在web.config中对文件的平安性举行设置,即便用户登录体系后,某些网页必需有特定权限的用户能够扫瞄;关于页面间的参数传送经由过程Session举行,超等链接后不附加任何参数。

  ⑵速率思索到部分的用户上彀速率对照慢,带宽不敷,关于多量量的数据显现只管接纳分页的体例举行。

  ⑶易用性因为良多的用户非盘算机专业职员,因而请求体系利用便利而快速,好比:对有多个输出框的数据输出,能够经由过程回车键在分歧的输出框之间跳转,便利用户操纵;关于外部办理体系,由于本来客户一向利用Access体系,请求新的体系具有较高的自进修才能,只管参照本来体系。



UT的布局图


  停止语

  本体系开辟工夫为12个月,开辟职员为5人。数据库利用50多个库表,开辟工具为VisioStudio2003,接纳开源工具CSUnit作为单位测试工具。在多层架构的开辟形式下,分歧的开辟职员卖力分歧的层,能够专注于本人的部分。好比:卖力Web页面的人能够用心计划界面,卖力DAL层的人则次要思索与数据库的交互,至于营业需求则由卖力BLL层的人来举行。经由过程分层形式,年夜年夜改良了体系的保护性,也加速了开辟速率。能够想像,陪伴着微软.NET计谋的奉行,在.NET下多层架构的开辟形式将愈来愈盛行。也许C#刚上市的时候有些抄袭Java吧,但自从C#2.0上市之后,整个局面就扭转乾坤了,不但Java在模仿C#,而且他从来都没能跟得上C#的脚步。
柔情似水 该用户已被删除
沙发
发表于 2015-1-19 21:29:57 来自手机 | 只看该作者
网页从开始简单的hmtl到复杂的服务语言,走过了10多个年头,各种技术层出不穷,单个的主流技术也在不断翻新的版本,现在分析下各种语言的区别、优势、劣势、开发注意事项!
飘飘悠悠 该用户已被删除
板凳
发表于 2015-1-26 23:17:28 | 只看该作者
在调试JSP代码时,如果程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数。
小妖女 该用户已被删除
地板
发表于 2015-2-4 22:18:48 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
海妖 该用户已被删除
5#
发表于 2015-2-10 21:41:45 | 只看该作者
虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。
因胸联盟 该用户已被删除
6#
发表于 2015-3-1 15:18:53 | 只看该作者
关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。
若天明 该用户已被删除
7#
发表于 2015-3-10 19:39:35 | 只看该作者
在一个项目中谁敢保证每天几千万甚至几亿条的数据不丢失?谁敢保证应用的高可靠性?有可以借签的项目吗?
金色的骷髅 该用户已被删除
8#
发表于 2015-3-17 09:11:47 | 只看该作者
我的意思是.net好用,从功能上来说比JAVA强还是很明显的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-11 02:13

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表