准备


了解框架基本应用,已经完成Controller创建。

一、定义框架标准WebApi


一个标准的WebApi,包含预定义的入参和回参类型

入参为CallParams,需要增加FromBody声明,代码如下:

        public override ActionResult<CallResult> Query()
{
var list = _IEmployeeService.Query(Request.Params("DepartmentID"), this.ThisPageInfo);
return CallResult.Create(list);
} public ActionResult<CallResult> DisableOrEnabled([FromBody]CallParams param)
{
string id = param["Id"];
string strStatus = param["status"]; int status = (!string.IsNullOrEmpty(strStatus) && Convert.ToBoolean(strStatus)) ? : ; if (_IEmployeeService.DisableOrEnabled(id, status) <= )
return CallResult.Create(CallResultCode.NoChanged, "操作失败"); return CallResult.Success;
}

入参也可以是实体类型,不需要添加FromBody声明,代码如下:

        public override ActionResult<CallResult> Save(sys_employee entity)
{
if (_IEmployeeService.Save(entity) <= )
return CallResult.Create(CallResultCode.NoChanged, "保存失败"); return CallResult.Success;
}

二、入参CallParams对象介绍


CallParams是一个继承Dictionary<string, object>的对象,方便取出参数,重载了索引取值方法,直接返回字符串。

    public class CallParams : Dictionary<string, object>
{
public new string this[string key]
{
get
{
if (base.TryGetValue(key, out object item))
return Convert.ToString(item);
return string.Empty;
}
}
}

三、回参CallResult多种返回写法


            //返回成功
return CallResult.Success;
//返回状态
return CallResult.Create(CallResultCode.NoChanged);
//返回状态,备注
return CallResult.Create(CallResultCode.NoChanged, "操作失败");
//返回数据
return CallResult.Create(list);
//返回状态,备注,数据
return CallResult.Create(CallResultCode.Success, "操作成功", list);

【OF框架】定义框架标准WebApi,按照规范返回状态信息及数据信息的更多相关文章

  1. 【开源】OSharp3.0框架解说系列(6.2):操作日志与数据日志

    OSharp是什么? OSharp是个快速开发框架,但不是一个大而全的包罗万象的框架,严格的说,OSharp中什么都没有实现.与其他大而全的框架最大的不同点,就是OSharp只做抽象封装,不做实现.依 ...

  2. 利用jQuery扩展接口为jQuery框架定义了两个自定义函数,然后调用这两个函数

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. .Net框架与框架类库-转

    http://blog.csdn.net/rrrfff/article/details/6686493 .NET Framework 具有两个主要组件:公共语言运行库和 .NET Framework类 ...

  4. [ SSH框架 ] Hibernate框架学习之二

    一.Hibernate持久化类的编写规范 1.什么是持久化类 Hibernate是持久层的ORM影射框架,专注于数据的持久化工作.所谓持久化,就是将内存中的数据永久存储到关系型数据库中.那么知道了什么 ...

  5. web 框架的本质及自定义web框架 模板渲染jinja2 mvc 和 mtv框架 Django框架的下载安装 基于Django实现的一个简单示例

    Django基础一之web框架的本质 本节目录 一 web框架的本质及自定义web框架 二 模板渲染JinJa2 三 MVC和MTV框架 四 Django的下载安装 五 基于Django实现的一个简单 ...

  6. Django框架----Web框架本质

    Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 半成品自定义web框架 impor ...

  7. 框架----Web框架本质

    一.Web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. #!/usr/bin/env python #coding:ut ...

  8. [ SSH框架 ] Hibernate框架学习之三

    一.表关系的分析 Hibernate框架实现了ORM的思想,将关系数据库中表的数据映射成对象,使开发人员把对数据库的操作转化为对对象的操作,Hibernate的关联关系映射主要包括多表的映射配置.数据 ...

  9. Android学习之——自己搭建Http框架(2)——框架扩展

    · 本文主要解说的是Json指定转化成对象返回.下载进度更新,随时取消Request请求 一.Json指定转化成对象返回 上篇文章主要讲基础的框架搭建起来了,这次须要做一些些的扩展,这里Json转化用 ...

随机推荐

  1. ubuntu 18.04使用sysbench测试MySQL性能

    首先下载安装sysbench: sudo apt-get install sysbench -y 查看一下sysbench版本是多少: zifeiy@zifeiy-S1-Series:~$ sysbe ...

  2. STM32驱动模数转换芯片ADS1120(PT100铂电阻测温度)第2篇

    1. 先看下原理图,原理图是电流从IDAC1流出,提供驱动,然后R(REF)这个电阻上的电压作为参考,读取AIN0和AIN1的电压,那么可以测量出来电阻值. 2. 上图是官方给出的参考,下图是我实际用 ...

  3. .mmap文件如何打开

    .mmap是一种思维导图文件的后缀,可以用Xmind软件打开.

  4. ajax页面刷新小错误(提交按钮type必须为button,而不能是submit)

    背景: 使用ajax提交form表单时,提交按钮的type值写为了submit,导致ajax中回调函数中的提示信息toastr.success('提交数据成功');没有执行,只执行了alert语句 , ...

  5. 【嵌入式硬件Esp32】Ubuntu18.04 更换阿里云软件源

    使用Ubuntu 的apt-get来安装软件是总是因为官方源的速度太慢而抓狂. 但是用阿里云的源就很快,下面总结一下如何更换Ubuntu的软件源. 一.备份sudo cp /etc/apt/sourc ...

  6. Django源码分析之启动wsgi发生的事

    前言 ​ 好多人对技术的理解都停留在懂得使用即可,因而只会用而不会灵活用,俗话说好奇害死猫,不然我也不会在凌晨1.48的时候决定写这篇博客,好吧不啰嗦了 ​ 继续上一篇文章,后我有个问题(上文:&qu ...

  7. DCEP究竟是什么?

    DCEP (Digital Currency Electronic Payment) 数字货币电子支付工具 DCEP将由中国人民银行推出,推出时间待定. DCEP是使用区块链技术的一种联盟链,为全新的 ...

  8. [Xamarin] - "GenerateJavaStubs" 异常之解决

    背景 新建的 Xamarin 项目,编译失败. Error The "GenerateJavaStubs" task failed unexpectedly.Error The s ...

  9. Quartz.Net—初识

    什么是Quartz.Net 计划任务,定时框架.大到可以做灾难转移  负载均衡.小到可以做定时生成数据,数据更新等等. 官网 http://www.quartz-scheduler.org/    Q ...

  10. SQL——SELECT(查)

    一.SELECT语句的基本用法 SELECT语句会在数据库中选取数据,存放在一个结果表中. SELECT 语法: SELECT 列名1,列名2... FROM 表名: 先看一下student表: 1. ...