zoukankan      html  css  js  c++  java
  • [Prodinner项目]学习分享_第三部分_Service层(业务逻辑层)

      前两节讲到怎样生成一个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中调用啦。

  • 相关阅读:
    POJ_1523 SPF (Tarjan 求割点)
    POJ 3177&& 3352
    POJ 基础数据结构
    Bellman Ford, SPFA 学习笔记(含有负权的单源最短路径)
    HDU_3062 Party (2SAT)
    POJ二分图最大匹配的简单题目
    POJ 2553 The Bottom of a Graph (Trajan 强连通分量 缩点)
    POJ_3678 Katu Puzzle (2SAT)
    HDU_3836 Equivalent Set (Trajan 强连通分量 缩点)
    POJ1904 King's Quest(Tarjan 求缩点)
  • 原文地址:https://www.cnblogs.com/zhenhong/p/3723720.html
Copyright © 2011-2022 走看看