『转』数据库的委托之类型分类处理 很久没研究数据库了,因为 XEIM 飞鸽传书 这个软件需要用到数据库,于是研究一下。
转载的,上网搜原创,我也不知道哪里来的。
一般数据库里区分类别可以直接存放字符,也可以用数字区分。

比如1,普通会员 2,管理员 3,超级管理员;库里面存放的是1,2,3等形势。但出库后显示我们需要转换成别人能看的懂的。

所以大家也做数据字典,但每次我做过的数据字典我都记不了,而且使用起来调用的方法名繁琐。

委托可以帮到很大的忙,相信很多人也经常用委托来处理其他事件方法。

比如,我们做一个这样的字典:

/// <summary>        /// 根据数字类型取得该会员的类型名称        /// </summary>        /// <param name="Typeid"></param>        /// <returns></returns>        public string GetNumberType(int Typeid)        {            string laststr = string.Empty;            switch (Typeid)            {                case 0:                    laststr = "普通会员";                    break;                case 1:                    laststr = "VIP会员";                    break;                case 2:                    laststr = "至尊会员";                    break;            }            return laststr;        }
我们这样经常使用这种方法来调用数据字典,简单又实惠。

但是诸如此类需要我们大量做的数据字典太多太多,我们每一次使用都要去找类库查看方法名,太不人性化。

/// <summary>        /// 根据类型取得该消息的类型          /// </summary>        /// <param name="Typeid"></param>        /// <returns></returns>        public string GetMsgType(int Typeid)        {            string laststr = string.Empty;            switch (Typeid)            {                case 1:                    laststr = "私人消息";                    break;                case 2:                    laststr = "系统消息";                    break;                case 3:                    laststr = "官方消息";                    break;            }            return laststr;        }
使用委托就可以不用记这些字典的方法名了。

//委托办事儿去吧         public delegate string GetType(int typeid);                public static string GetLastType(int cot, GetType MakeType)        {            if (cot > 0)            {                return MakeType(cot);            }            else            {                return "";            }         }

使用委托的关键字 delegate 定义了一个GetLastType方法来“处理”诸如此类繁琐的事儿,有人代理了,还要有人来

“代理吧”以后我们要做事儿就找“代理”,来看看代理长什么样?

/// <summary>        /// 代理办事        /// </summary>        /// <param name="typeclass">1,会员的类型;2,消息的类型 </param>        /// <param name="typeid">出库的数字类型</param>        /// <returns>返回名称</returns>        public string Gettype(int typeclass,int typeid)        {            string laststr = string.Empty;            switch(typeclass)            {                case 1:                 laststr=  GetLastType(typeid, GetNumberType);                 break;                case 2:                 laststr = GetLastType(typeid, GetMsgType);                 break;            }            return laststr;        }
使用的时候就用Gettype方法,写上注释,就完事OK了。省的我们还要去记字典方法名。

『转』数据库的委托之类型分类处理相关推荐

  1. 『paddle』paddleclas 学习笔记:分类预训练模型选择

    目录 ImageNet预训练模型库 模型库概览图 SSLD知识蒸馏预训练模型 ResNet 及其 Vd 系列 移动端系列 SEResNeXt与Res2Net系列 DPN 与 DenseNet 系列 H ...

  2. 『网络安全』蜜罐到蜜网入门指南(二)蜜罐的起源、作用及分类

    原创不易,点个赞呗!如果喜欢,欢迎随意赞赏. 前言 大家好,<『网络安全』蜜罐到蜜网入门指南>进入第二篇. 在第一篇,我们由网络安全入手,由浅入深,引出蜜罐概念. 从这一篇开始,我们将主要 ...

  3. 『中级篇』k8s的NodePort类型Service以及Label的简单实用(68)

    原创文章,欢迎转载.转载请注明:转载自IT人故事会,谢谢! 原文链接地址:『中级篇』k8s的NodePort类型Service以及Label的简单实用(68) 上次主要说了service的一种类型,c ...

  4. 『重磅』免费无限量下载知网/万方/维普等数据库文献的正规渠道

    本文链接("因果关系推断"微信公众号) 疫情期间迟迟不能返校,科研汪们都渴望可以像以前在学校那样,依旧自由地下载知网/万方/维普文献.今天就向大家推荐一种**『免费无限量』下载学术 ...

  5. 『网络安全』蜜罐到蜜网入门指南(三)蜜罐内部组成分析

    原创不易,点个赞呗!如果喜欢,关注.收藏不迷路. 前言 大家好,<『网络安全』蜜罐到蜜网入门指南>进入第三篇. 通过前面的内容,我们知道了什么是蜜罐以及蜜罐的作用和分类等.点击下方链接,可 ...

  6. 超级十全大补贴!!打造您心目中完美的TREO!!『上』

    超级十全大补贴!!打造您心目中完美的TREO!!『上』 我是去年8月用600,再到10月分入手650,一直到现在,不知不觉已经过了那么久了.快乐的时间总是过得快啊,怪不得王羲之说:快然自足,曾不知老之 ...

  7. 虫师『性能测试』文章大汇总

    原文地址为: 虫师『性能测试』文章大汇总 为了方便阅读,我重新整理本文,将包含本博客所有与性能测试有关的内容. ------------------------------------------- ...

  8. 『ExtJS』表单(一)常用表单控件及内置验证

    几点说明 关于ExtJS的表单,我打算分为三个部分来写 常用表单控件及内置验证 -- 这里主要是JS代码 表单行为与Asp.NET页面的消息回复 -- 这里既有JS代码,与有C#代码,我主要是使用As ...

  9. iOS 开发:『Runtime』详解(二)Method Swizzling

    本文用来介绍 iOS 开发中『Runtime』中的黑魔法Method Swizzling. 通过本文,您将了解到: Method Swizzling(动态方法交换)简介 Method Swizzlin ...

最新文章

  1. java模拟浏览器不关闭会话_JSP实现浏览器关闭cookies情况下的会话管理
  2. Undefined Reference to Typeinfo
  3. 【设计】线框图、原型和视觉稿的区别
  4. 搜索引擎怎么收集的那么多内容?
  5. php命令执行无法重定向输出,PHP标头重定向无法正常工作
  6. DataBseDesign工作笔记004---PowerDesigner导入sql脚本生成物理模型
  7. heartbeat+DRBD+mysql高可用集群实战
  8. Ubuntu firefox 显示在运行无法打开,如何在终端关闭进程
  9. 分析:微软最终将赢得平板电脑市场的5个理由
  10. vue-awesome-swiper:依赖于6.X版本Swiper时autoplay自动播放设置无效
  11. VB ListView控件各种操作详解
  12. PYECHARTS 实战 国内/国际地图航线图制作 (一)
  13. mysql视图代码_mysql创建视图的实例代码
  14. 惠普打印机WiFi连接使用
  15. 2021-11-27 2021年施工员-装饰方向-岗位技能(施工员)考试题及施工员-装饰方向-岗位技能(施工员)考试题库
  16. python话费充值_Python 登录移动查询话费
  17. IoT:OneNET - 中国移动物联网平台介绍
  18. windows制作proxmox pve U盘镜像
  19. 阿里云轻量服务器 外网卡_学生专属云 阿里云服务器仅需¥9.5/月
  20. 为什么企业不喜欢标准成本法?

热门文章

  1. Linux E325: ATTENTION Found a swap file by the name “./.backu.sh.swp“
  2. 如何评价一个产品经理工作做的好坏?
  3. QQ 调查用户是否希望推 「已读」功能,如何评价「已读」功能?QQ是否要加这个功能?...
  4. 编写一个可以打印不同长度数组内容的函数模板
  5. qt5 linux 窗口不能置顶_Qt 5.15 LTS发布,Qt 6要来了
  6. stm32f407 tim4 复用_波分复用对比,CWDM、DWDM、CCWDM有何不同?
  7. 作者:司光亚(1967-),男,国防大学信息作战与指挥训练教研部教授,主要研究方向为战争复杂系统建模仿真。...
  8. 作者:黎建辉(1973-),男,博士,中国科学院计算机网络信息中心研究员、博士生导师。...
  9. 作者:连德富,男,电子科技大学讲师、教育大数据研究所副所长。
  10. 【程序设计】模块化程序设计