搭建三层架构的步骤
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、在三层下使用Linq to sql进行开发
1、搭建三层架构
1)创建表现层:windows应用程序、控制台、web应用程序
2)创建实体层:类库(Models)
3)创建数据访问层:类库(Dals),如果要使用抽象工厂模式,将此类库名称改为SqlDals。
4)创建业务逻辑层:类库(Blls)
2、建立三层之间的依赖关系
A、表现层引用业务逻辑层
B、业务逻辑层引用数据访问层
表现层、业务逻辑层、数据访问都引用实体层
3、实现实体层
用来编写实体类,与数据库中的表是一一对应。
在实体层使用linq to sql来创建:
1)添加“linq to sql类”文件,以数据库名命名Pos.dbml
2)将需要操作的表拖入到linq to sql中,以便生成对应的类
3)将生成好的配置文件app.config拖入到表现层
---此处可以将项目调整为抽象工厂设计模式。参见:【搭建抽象工厂的步骤.txt】
4、实现数据访问层
用来编写对数据表进行添加、修改、删除、查询的方法。每个类与表一一对应,比如Product,对应的类就应该命名为ProductDal
1)在数据访问层中,添加System.Data.Linq的引用
并引用命名空间using Models;和命名空间using System.Data.Linq;
2)实现添加、修改、删除、查询方法
添加:public bool Insert(表名 model)
{
//创建数据库上下文对象
PosDataContext db=new PosDataContext();
//将对象添加到表中
db.表名.InsertOnSubmit(model);
//提交更改到数据库
db.SubmitChanges();
}
修改:public bool Update(表名 model)
{
//创建数据库上下文对象
PosDataContext db=new PosDataContext();
//从表中获取要修改的对象
var m= db.表名.SingleOrDefault(a=>a.Id(表中的主键字段)==model.Id);
//修改要修改的字段
m.字段1=model.字段1;
m.字段2=model.字段2;
m.字段3=model.字段3;
//提交更改到数据库
db.SubmitChanges();
}
删除:public bool Delete(int Id)
{
//创建数据库上下文对象
PosDataContext db=new PosDataContext();
//从表中获取要删除的对象
var m= db.表名.SingleOrDefault(a=>a.Id(表中的主键字段)==model.Id);
//从表中删除该对象
db.表名.DeleteOnSubmit(m);
//提交更改到数据库
db.SubmitChanges();
}
查询:
1)查询所有
public List<表名> Get表名s()
{
//创建数据库上下文对象
PosDataContext db=new PosDataContext();
return db.表名.ToList();
}
2)根据Id查询单个数据
public 表名 Get表名ById(int Id)
{
//创建数据库上下文对象
PosDataContext db=new PosDataContext();
//从表中查询该对象
var m= db.表名.SingleOrDefault(a=>a.Id(表中的主键字段)==Id);
return m;
}
3)根据条件查询多条
public List<表名> Get表名sBy字段名(string 参数)
{
//创建数据库上下文对象
PosDataContext db=new PosDataContext();
return db.表名.Where(a=>a.字段==参数).ToList();
}