.net core 工具类库 UtilsSharp.Standard


UtilsSharp.Standard工具类库 详细文档:UtilsSharp框架文档

UtilsSharp.Standard工具类库简介:该工具类是基于UtilsSharp.Standard2.0封装的,里面包括:小驼峰法命名出参规范类、出入参规范类、阿里oss帮助类、钉钉机器人帮助类、图片帮助类、文件帮助类、下载类、随机数帮助类、对象映射帮助类、字符串帮助类、验证码生成、时间帮助类、中国日历帮助类、任务下发帮助类等,后面将持续更新中…

一、命名规范
1、小驼峰:

除第一个单词之外,其他单词首字母大写

例如: int myStudentCount

用于:变量名

2、大驼峰:

相比小驼峰法,大驼峰法(即帕斯卡命名法)把第一个单词的首字母也大写了

例如: public class DataBaseUser

用于:命名空间、类名、方法名、属性名

3、方法命名规范

获取单个对象的方法用Get作为前缀,如:GetRecord

获取多个对象的方法用Get作为前缀,最后面加s,如:GetRecords

分页搜索的方法用Search作为前缀,如:SearchRecord

添加的方法用Add作为前缀,如:AddRecord

修改的方法用Modify作为前缀,如:ModifyRecord

(添加+修改)的方法用Save作为前缀,如:SaveRecord

删除的方法用Delete作为前缀,如:DeleteRecord

清空的方法用Clear作为前缀,如:ClearRecord

判断类的方法用Is作为前缀,如:IsRegister,IsExist

4、变量命名规范

变量取名应见名识意,尽量用英文单词,而不是缩写

例如:pageIndex, pageSize

5、入参、出参类名统一,入参+Request,出参+Response

例如:

/// 
/// 会员登录请求参数
/// 
public class LoginRequest
{
   /// 
   /// 用户名
   /// 
   public string UserName { set; get; }
   /// 
   /// 密码
   /// 
   public string UserPassword { set; get; }

}
/// 
/// 会员登录返回参数
/// 
public class LoginResponse
{
   /// 
   /// 访问口令
   /// 
   public string Token { set; get; }

   /// 
   /// 用户名
   /// 
   public string UserName { set; get; }
}
二、请求接口返回格式:BaseResut
1、请求方法例子:
/// 
/// 登入
/// 
/// 登入参数
/// 
public BaseResult Login(LoginRequest request)
{
   var result = new BaseResult();
   try
   {
      if (string.IsNullOrEmpty(request.UserName))
      {
          result.SetError("用户名不能为空", BaseStateCode.参数不能为空);
          return result;
       }
       if (string.IsNullOrEmpty(request.UserPassword))
       {
          result.SetError("密码不能为空", BaseStateCode.参数不能为空);
          return result;
       }
       /*…这边省略登入业务代码…*/
       var response = new LoginResponse {UserName = request.UserName, Token = Guid.NewGuid().ToString("N")};
       result.SetOkResult(response,"登入成功");
       return result;
    }
    catch (Exception ex)
    {
      var errorCode = Guid.NewGuid().ToString("N");
      //这边用errorCode作为日志主键,把错误信息写入到日志
      var errorMessage = errorCode.ToMsgException();
      result.SetError(errorMessage, BaseStateCode.TryCatch异常错误);
      return result;
    }
}
2、请求返回的成功结构:
{
    "result": { //result 是个泛型 
        "token": "ecbcc910fab0497c933d69906188ad0e",
        "userName": "xxx"
    },
    "code": 200,//成功码 错误码 可以参考文章末尾
    "msg": "登入成功" //提示信息
}
三、请求列表接口基础出入参,入参:BasePage,有排序的入参:BaseSortPage,出参:BasePagedResult
1、分页请求的基础参数
{
 keyword:"", //关键词搜索
 pageIndex:1, //当前页码
 pageSize:10, //分页数量
}
2、请求方法例子:
/// 
/// 分页搜索
/// 
/// 登入参数
/// 
public BasePagedResult Search(BaseSortPage request)
{
   var result = new BasePagedResult();
   try
   {
      var response = new BasePagedInfoResult()
      {
          PageIndex = request.PageIndex,
          PageSize = request.PageSize
      };
      if (string.IsNullOrEmpty(request.Keyword))
      {
          result.SetError("搜索关键词不能为空!",BaseStateCode.参数不能为空);
          return result;
      }
          /*…这边省略查询业务代码…*/
          /*…以下模拟从数据库获取数据…*/
      response.List = new List
      {
         new LoginResponse() {Token = Guid.NewGuid().ToString(), UserName = "xxx1"},
         new LoginResponse() {Token = Guid.NewGuid().ToString(), UserName = "xxx2"},
         new LoginResponse() {Token = Guid.NewGuid().ToString(), UserName = "xxx3"}
      };
      response.PageIndex = request.PageIndex;
      response.PageSize = request.PageSize;
      response.TotalCount = 100;
      response.Params = request;
      result.SetOkResult(response);
      return result;
    }
    catch (Exception ex)
    {
      var errorCode = Guid.NewGuid().ToString("N");
      //这边用errorCode作为日志主键,把错误信息写入到日志
      var errorMessage = errorCode.ToMsgException();
      result.SetError(errorMessage, BaseStateCode.TryCatch异常错误);
      return result;
    }
}
3、分页请求返回的成功结构:
{
    "result": {
        "pageIndex": 1,//当前页码
        "pageSize": 10,//分页数量
        "totalCount": 100,//总条数
        "totalPages": 10,//总页数 
        "orderBy": "createTime:desc",//排序
        "hasPreviousPage": false,//是否有上一页
        "hasNextPage": true,//是否有下一页
        "list": [    //返回的列表数据
            {
                "token": "411349e5-d345-4bfa-8022-d109fc483aeb",
                "userName": "xxx1"
            },
            {
                "token": "3a72e1d0-73dc-48d8-972b-7dde831101c3",
                "userName": "xxx2"
            },
            {
                "token": "9d690366-cc61-4ca5-9f08-f23972ebe27a",
                "userName": "xxx3"
            }
        ],
        "params": {  //入参 object类型
            "sortField": "createTime",//排序字段
            "sortType": "desc",//asc 升序  desc降序
            "pageIndex": 1,
            "pageSize": 10,
            "keyword": "连衣裙"
        }
    },
    "code": 200,
    "msg": "请求成功"
}
四、错误码
返回码 标识 说明
200 success 请求成功
999 defaultTips 业务提示
2000 apiError 接口异常
3000 networkError 网络异常
4000 notLogin 未登录
4010 authExpire 授权到期
5000 exception 异常错误
6000 dataNotFound 数据找不到
6010 dataNotValid 数据验证不通过
7000 businessError 默认业务性异常
8000 dbError 数据库异常
9000 SystemError 系统错误

以上给到的错误码是基础错误码,其他错误码可以根据自己业务新增,新增的业务错误码遵循要在基础错误码范围内:

比如:

某个接口异常的错误码可以是:2000-2999之间的数字;

网络类的错误码可以是:3000-3999之间的数字;

授权类的错误码可以是:4000-4999之间的数字;

数据验证类的错误码可以是:6000-6999之间的数字;

系统类的错误码可以是:9000-9999之间的数字等。

UtilsSharp.Standard工具类库 详细文档:UtilsSharp框架文档

你可能感兴趣的:(C#,.netcore,c#,开发语言)