php三层架构增删改查,ASP.NET + EasyUI三层架构实现增删改查之一:实体层的构建...

有段时间没写博客了,今天想写点东西,决定跟大家分享一下如何利用EasyUI和ASP.NET构建一个基本的应用程序,实现数据库的增删改查等基本操作。首先需要声明,本系列博客只是搭建一个基本的三层架构,即Model、DAL、BLL和UI,不会涉及到设计模式中的抽象工厂模式之类的东西,主要是为了方便大家理解,在真正做项目的时候,还是希望大家能够事先定义好工厂、接口之列的东西,以此来降低系统的耦合性。

三层架构大家应该不陌生,还不了解的同志也可以自行百度。基本的三层架构由四个类库构成,即Model(Entity)层、DAL层、BLL层、UI层。如下如所示:

5917dc608e4520f341677cc27cfa4371.png

Model层是对数据库中数据表的一对一映射,它的作用在我看来只有一个,那就是被当做一种数据类型进行参数传递。举个例子,我想定义一个添加学生信息的函数,如果还是用基本数据类型数据作为参数的话,那么函数就得这样写:

public int AddStudentInfo(string id, string name, string gender, int? age, DateTime? birthday, string phoneNumber, string contactAddress)

{

//TODO:具体代码

}

这个函数参数太多,既不便于理解,也不利于扩展,因此我们可以考虑建立一个实体类,把这个实体类当做参数进行参数传递,实体类代码如下所示:

public class StudentModel

{

///

/// 学号

///

public string Id { get; set; }

///

/// 姓名

///

public string Name { get; set; }

///

/// 性别

///

public string Gender { get; set; }

///

/// 年龄

///

public int? Age { get; set; }

///

/// 生日

///

public DateTime? Birthday { get; set; }

///

/// 电话号码

///

public string PhoneNumber { get; set; }

///

/// 联系地址

///

public string ContactAddress { get; set; }

}

相对应的添加学生信息的函数可以这么写:

public int AddStudentInfo(StudentModel model)

{

//TODO:具体代码

}

如果你的数据库中还有其他数据表的话,逐一建立相应的类与之对应就行了。本系列博客的测试数据用的是宗地、界址点、界址线的属性数据,后续的博客也会用到,其具体代码如下:

宗地类:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace EasyUIApp.Entity

{

public class CadastreEntity

{

///

/// 编号

///

public int Id { get; set; }

///

/// 标识码

///

public int? BSM { get; set; }

///

/// 要素代码

///

public string YSDM { get; set; }

///

/// 地块编码

///

public string DKBM { get; set; }

///

/// 地块类别

///

public string DKLB { get; set; }

///

/// 地块东至

///

public string DKDZ { get; set; }

///

/// 地块西至

///

public string DKXZ { get; set; }

///

/// 地块南至

///

public string DKNZ { get; set; }

///

/// 地块北至

///

public string DKBZ { get; set; }

///

/// 指界人姓名

///

public string ZJRXM { get; set; }

}

}

界址点类:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace EasyUIApp.Entity

{

public class BoundaryPointEntity

{

///

/// 编号

///

public int Id { get; set; }

///

/// 标识码

///

public int? BSM { get; set; }

///

/// 要素代码

///

public string YSDM { get; set; }

///

/// 界址点号

///

public string JZDH { get; set; }

///

/// 界标类型

///

public string JBLX { get; set; }

///

/// 界址点类型

///

public string JZDLX { get; set; }

///

/// 地块编码

///

public string DKBM { get; set; }

///

/// X坐标值

///

public float? XZBZ { get; set; }

///

/// Y坐标值

///

public float? YZBZ { get; set; }

}

}

界址线类:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace EasyUIApp.Entity

{

public class BoundaryLineEntity

{

///

/// 编号

///

public int Id { get; set; }

///

/// 地块编码

///

public string DKBM { get; set; }

///

/// 标识码

///

public int? BSM { get; set; }

///

/// 要素代码

///

public string YSDM { get; set; }

///

/// 界线性质

///

public string JXXZ { get; set; }

///

/// 界址线类别

///

public string JZXLB { get; set; }

///

/// 界址线位置

///

public string JZXWZ { get; set; }

///

/// 界址线号

///

public string JZXH { get; set; }

///

/// 起界址点号

///

public string QJZDH { get; set; }

///

/// 终界址点号

///

public string ZJZDH { get; set; }

///

/// 界址线说明

///

public string JZXSM { get; set; }

///

/// 毗邻地物权利人

///

public string PLDWQLR { get; set; }

///

/// 毗邻地物指界人

///

public string PLDWZJR { get; set; }

}

}

到此为止实体层建立完毕,下一篇博客将会讲解数据访问层的构建。

标签:set,string,EasyUI,get,改查,System,ASP,using,public

来源: https://blog.csdn.net/HerryDong/article/details/98359465

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值