• C#中方法,属性与索引器


    C#中方法,属性与索引器:

    TODO:

    1,关于系统中常常出现的通过某一字段,查询相应实体信息(可能是一条字段或一条数据和一组泛型集合)

    解说篇:1,方法,2,属性3。索引器

    1。方法(1。依据状态编码返回状态名称:一条字段2。依据状态返回一条数据:实体)

    1,依据状态编码返回状态名称:一条字段
    /// <summary>
            /// 依据状态返回状态名称
            /// </summary>
            /// <param name="value"></param>
            /// <returns></returns>
            public string GetZZZTName(string value)
            {
                string sName = string.Empty;
                DataTypeDict dicC = new DataTypeDict();
                sName = dicC.ReturnDicNameByCode(value);
                return sName;
            }
    2,依据状态返回一条数据:实体
    /// <summary>
            /// 获取接诊信息
            /// </summary>
            /// <param name="model">双向转诊</param>
            protected Model.PatientReferral GetAdmissionsModel(Model.PatientReferral model)
            {
                model.iZZZT = 50;//标识【iZZZT】【50:已转诊】
                //取得人力资源数据,找到科室信息
                res_HumanResources tmp = ires_HumanResourcesBLL.GetModelByCondition(p => p.gUserID == GetSessionCurrentUserInfo.gUserID);
                if (tmp != null)
                {
                    model.sJZKSBM = tmp.sDepartment;//接诊科室编码
                    model.sJZKS = GetDictStandardizedName("CVA09.00.001", tmp.sDepartment);//接诊科室:【參数】:1。通过人力资源相应分类编码code 2,部门编码
                }
    
                model.sJZYSBM = GetSessionCurrentUserInfo.sLoginName;//接诊医师:当前登录【用户编号】
                model.sJZYS = GetSessionCurrentUserInfo.sUserName;//接诊医师:当前登录【用户姓名】
                model.dJZSJ = DateTime.Now;//接诊日期:当前时间
                model.sOperator = GetSessionCurrentUserInfo.sLoginName;//最后操作人编号:当前登录【用户编号】:sLoginName
                model.dOperator = DateTime.Now;//最后操作时间
    
                return model;
            }
    

    2,属性(依据状态编码返回状态名称:一条字段)

    /*[编辑]属性SMartyrKey名称,书写调整(sMartyrKey变更SMartyrKey。自己定义私有字段smartyrKey变更_smartyrKey) 2015/04/22      [方] */
            private string _smartyrKey;//自己定义私有属性_smartyrKey
            public string SMartyrKey
            {
                get
                {
                    if (!string.IsNullOrEmpty(_smartyrKey))
                    {
                        MartyrsAssociation modelAssoc = new MartyrsAssociation();
                        modelAssoc.sRelationKey = _smartyrKey;//烈士墓key:烈士key(烈士和烈士墓关联获取烈士key)
                        modelAssoc = iLSLSMBLL.GetModel(modelAssoc);//烈士和烈士墓关联实体
                        _smartyrKey = modelAssoc.sMartyrKey;//[sMartyrKey   烈士key]
                    }
                    return _smartyrKey;//这里取出私有属性_smartyrKey的值
                }
            }

    3,索引器(依据状态编码返回状态名称:一条字段)

    #region 索引器--根据转诊状态编码【int】获取转诊状态名称【string】
            /// <summary>
            /// 索引器--根据转诊状态编码【int】获取转诊状态名称【string】
            /// </summary>
            /// <param name="index">转诊状态编码【int】</param>
            /// <returns>转诊状态名称【string】</returns>
            public string this[int index]
            {
                get
                {
                    //转诊状态(10:已起草;20:已申请;30:院内审核通过 40:院内审核不通过 50:已接诊;60:终审通过;70:终审不通过;90:已作废【仅仅能作废20/30/40】)
                    switch (index)
                    {
                        case 10:
                            _izzztname = "已起草";
                            break;
                        case 20:
                            _izzztname = "已申请";
                            break;
                        case 30:
                            _izzztname = "申请单位审核通过";
                            break;
                        case 40:
                            _izzztname = "申请单位审核不通过";
                            break;
                        case 50:
                            _izzztname = "已接诊";
                            break;
                        case 60:
                            _izzztname = "终审通过";
                            break;
                        case 70:
                            _izzztname = "终审不通过";
                            break;
                        case 90:
                            _izzztname = "已作废";
                            break;
                        default:
                            break;
                    }
                    return _izzztname;//转诊状态名称
                }
            }
            #endregion
    
            /// <summary>
            /// 获取转诊状态名称
            /// </summary>
            /// <param name="sCode">转诊状态编码</param>
            /// <returns>转诊状态名称</returns>
            protected string GetiZZZTName(string sCode)
            {
                /*通过索引器获得转诊状态名称*/
                if (!string.IsNullOrEmpty(sCode))
                {
                    Referral rfIndexer = new Referral();
                    _izzztname = rfIndexer[Convert.ToInt32(sCode)];//索引器this:通过类的实例调用【參数:转诊状态编码】
                }
                return _izzztname;//转诊状态名称
            }

    TODO:

    1,方法用的最多

    2,属性其次

    3。索引器最少

  • 相关阅读:
    nodejs学习(一)--express+ejs生成项目
    react-native React Native version mismatch
    qrcode length overflow 生成二维码网址长度溢出解决办法
    禁止input输入空格
    微信开发:清除微信浏览器缓存
    多行文本溢出显示...的方法(-webkit-line-clamp)
    angular路由(自带路由篇)
    angular入门(基础篇)
    Python文件读写(open(),close(),with open() as f...)
    centos6.9使用yum安装mysql(简单粗暴,亲测有效)
  • 原文地址:https://www.cnblogs.com/blfshiye/p/5208758.html
Copyright © 2020-2023  润新知