前两节讲到怎样生成一个Model和怎样将Model映射到数据库,这一节将讲到业务逻辑层,也就是Service层。
1.Prodinner架构已经构建好的,基本的增删改查。
假设,我现在想操作第二节中讲到的TB_Instype数据库表,基本的增删改查。
1)我可以不写Service层,直接继承Cruder(Controller),来继承该Controller里封装好的增删改查。
2)我们来看一下Cruder里的代码
它是继承自Crudere类。
3).我们再看一下Crudere类
可以看到Crudere类,构造时将ICrudService实例化了,且下面一系列的增删改查的Action分别调用了ICrudService里的函数。
4).继续看一下ICrudService类
接口在Core类库里,方法名很明确,就是增删改查。
5).最后咱们来看一下,这些增删改查是如何实现的
Service类库的CrudService类,代码很明了,增删改查,
至于IRepo,可以查看定义,实现实在Data类库里的Repo类,通过DbContext类来操作数据库的增删改查。
6).差点漏掉一点,这里的添加类,编辑类都在WebUI里的Dto文件夹下Input类里
2.既然简单的增删改查可以,那么自定义的,需要自定义业务逻辑的,当然也可以。
Example:用户的登录验证
我只需返回用户数或者通过与否即可,不需要返回数据集。
1).首先是要有Person类并且关系映射到数据库,前两节一阐述,这里不加说明。
2).Core层定义接口
3).在Service类库中,实现接口。
这里只返回验证通过与否。
4).到这就可以在Controller中调用啦。