ASP.NET中三层结构的运用
ASP.NET中的三层结构分为表示层(UI),业务逻辑层(BLL),数据访问层(Models,DAL,IDAL,DALFactory,DB),下面我来说说我对学习三层结构的运用。
首先我给大家说说这三层都是什么意思。
1. 表示层:web项目自然是应用程序的表示层,就是访问的站点,它提供所有与用户进行交互的界面,通过业务逻辑层(BLL)项目相关方法,展示站点的功能。表示层主要的内容就是控件+事件。如果仅仅是展示,可能只需要将控件绑定数据即可,不需要编写代码;如果需要和用户交互,就要编写相关的事件代码。举个例子吧,比如说是用户“登录”按钮事件,可能需要编写代码验证用户输入内容是否合法(非空验证),然后通过调用业务逻辑的相关方法判断用户名和密码是否匹配,从而达到成功登陆的结果。
2. 业务逻辑层:BLL项目是业务逻辑层的项目,它为表示层提供所有业务的方法和数据访问,自然就是表示层与数据访问层的桥梁。当然它并不直接访问数据库,而是通过引用DALFactory项目来实现。
3. 数据访问层:DALFactory项目、IDAL项目、DAL项目都属于数据访问层的项目,其中那个DALFactory项目是数据访问的工厂;IDAL项目是提供了数据访问的接口;DAL项目实现了IDAL项目的接口,它可以根据不同的数据库环境实现不同的访问数据的方法。
4. 模型层:Models项目包含与数据库相对应的实体类,由于三层中每一层都需要使用该项目的类,也可以把它独立出来叫模型层。
说了这么多概念也许大家都不明白是什么意思,下面我通过一个简单的例子来详细讲讲。我们从模型层开始说,比如数据库的名字叫Northwind,其中有一个Region表,表中有两个字段(Id, Name)。模型层就是封装数据库表的字段的,把它做成属性,方便每一层的调用。下面就是把这个表封装成属性。
using System;
using System.Collections.Generic;
using System.Text;
namespace Models
{
[Serializable]
public class RegionInfo
{
#region//私有字段
private int regionId;
private String regionName;
&n
相关文档:
前台设计页面.aspx
<body>
<form id="form1" runat="server">
<div>
<CR:CrystalReportViewer ID="CrystalReportViewer1" runat="server" AutoDataBind="true" />
</div>
  ......
protected void Button6_Click(object sender, EventArgs e)
{
this.Label11.Text = HtmlEncode(this.TextBox3.Text);
}
protected static string HtmlEn ......
OCIEnvNlsCreate 失败,返回代码为 -1,但错误消息文本不可用。
2009-09-20 02:10
“System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本 ”
的处理方法应该相似,没具体试过。
给oracle/ora92的目录加上network service用户的权限就可以了。
方法:右击ora92,选择属性,点击“安全&rd ......
经过一个多月的准备,我的小站ASP.NET学习网(www.17aspx.com)终于上线了。界面图如下:
ASP.NET学习网(www.17aspx.com),为ASP.NET学习者提供教程、示例、源码、工具等学习资料,推动ASP.NET学习者之间的交流。涉及ASP.NET、ASP.NET MVC、LINQ、VS2010、WPF、Silverlight、C#3.5等方面。 ......