asp.net实现三层架构的例子
2015-07-10 00:00
761 查看
看了2天的三层架构,其实自己以前也看过这个,可以由于没有使用过,所以对于三层架构也只是知道罢了,昨天看了一下他一些内部的具体架构,三层分别是BLL、WEB、DAL,在web接受用户请求,bll处理业务,dal处理数据库事务,下面是一个简单的例子!这是一个添加新员工的页面:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201507/70534ac3ee643f52b57c9ee367b23859.png)
后台代码如下:
usingSystem.Collections; usingSystem.Web; usingSystem.Web.Security; usingSystem.Web.UI; usingSystem.Web.UI.WebControls; usingSystem.Web.UI.WebControls.WebParts; usingSystem.Web.UI.HtmlControls; usingSystem.Text; usingMaticsoft.Common; usingLTP.Accounts.Bus; usingSystem; namespaceMaticsoft.Web.Employees { publicpartialclassMYAdd:Page { protectedvoidPage_Load(objectsender,EventArgse) { } protectedvoidButtonOK_Click(objectsender,EventArgse) { stringERRM =""; if(!PageValidate.IsNumber(Temployeeid.Text.Trim())) { ERRM +="输入的id不是数字,不合法!"; } if(this.Temployeeid.Text.Trim().Length ==0) { ERRM +="用户id不能为空!"; } if(ERRM !="") { MessageBox.Show(this, ERRM); ERRM =""; return; } intEmployeeID =int.Parse(this.Temployeeid.Text); / stringEmployeesName =this.Temployeename.Text; Maticsoft.Model.Employeesmodel =newModel.Employees(); //新建一个在dal层Employees的model对象,用于对数据库Employees表的数据处理 model.EmployeeID = EmployeeID; //将text里面用户输入的id数据传给model model.EmployeesName = EmployeesName; //将text里面用户输入的name数据传给model Maticsoft.BLL.Employeesbll =newBLL.Employees(); //新建一个在bll层的employees对象,用于调用dal层的model对象 bll.Add(model); //在bll层调用add方法添加一条数据 ////////////////////////////////////// bll层的add 方法 /////////////////////////////////////////////////////////////////////////// /// 增加一条数据 publicboolAdd(Maticsoft.Model.Employeesmodel) { returndal.Add(model); //调用dal层的add方法添加一条数据 } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////// dal层的 add 方法 /////////////////////////////////////////////////////////////////////////// ///增加一数据 publicboolAdd(Maticsoft.Model.Employeesmodel) { StringBuilderstrSql=newStringBuilder(); strSql.Append("insert into Employees("); strSql.Append("EmployeeID,EmployeesName)"); strSql.Append(" values ("); strSql.Append("@EmployeeID,@EmployeesName)"); SqlParameter[] parameters = { newSqlParameter("@EmployeeID",SqlDbType.Int,4), newSqlParameter("@EmployeesName",SqlDbType.VarChar,90)}; parameters[0].Value = model.EmployeeID; parameters[1].Value = model.EmployeesName; introws=DbHelperSQL.ExecuteSql(strSql.ToString(),parameters); if(rows >0) { returntrue; } else { returnfalse; } } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Maticsoft.Common.MessageBox.ShowAndRedirect(this,"保存成功|!","MYAdd.aspx"); //成功创建后弹出对话框,并跳转到当前页面! } protectedvoidButtonNo_Click(objectsender,EventArgse) { Response.Redirect("list.aspx"); } } }
相关文章推荐
- SharePoint 2013 表单认证使用ASP.Net配置工具添加用户
- spring mvc + JasperReports
- Asp.net mvc5 系列笔记
- SharePoint 2013 表单认证使用ASP.Net配置工具添加用户
- Asp.net Vnext Filters
- asp.net web api 2.0 实现跨域资源共享
- VisualStudio2010中创建ASP.Net WebService
- DEV-aspxgridview中的javascprit中获取所有行
- asp.net mvc 返回一个纯html页面
- Spring学习(19)--- Schema-based AOP(基于配置的AOP实现) --- 配置切面aspect
- java.lang.NoClassDefFoundError: org/aspectj/weaver/tools/PointcutPrimitive
- Asp.Net MVC5 格式化输出时间日期
- implicit declaration of function 'asprintf' 警告的解决
- aspx、ashx以及cs的关系,viewState
- asp.net(c#)网页跳转七种方法小结
- ASP.NET - 对URL传递的值进行编码Server.UrlEncode()
- 关于asp.net获取数据库时间前台绑定年月日的方法
- aspCms 标签大全
- ASP.NET - 网页重定向 Response.Redirect()
- asp.net 获取进程。。杀到进程