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,索引器最少

时间: 2024-11-09 01:54:58

C#中方法,属性与索引器的相关文章

010.里式转换、命名空间、字段属性、索引器

1.is asis:判断对象和类型的兼容 兼容---true 不兼容---false 子类兼容父类 子类对象 is 父类类型 --true对象 is 类型 (对象为此类型的对象 对象为此类型的子类的对象 --true)public class Person{}public class Student:Person{} Person per=new Person();Student stu=new Student();Person person=new Student();返回true:per i

C#字段、属性、索引器

1.字段 字段是直接在类或结构中声明的任何类型的变量. 字段是其包含类型的"成员". 类或结构可以拥有实例字段或静态字段,或同时拥有两者. 实例字段特定于类型的实例. 如果您拥有类 T 和实例字段 F,可以创建类型 T 的两个对象,并修改每个对象中 F 的值,这不影响另一对象中的该值. 相比之下,静态字段属于类本身,在该类的所有实例中共享. 从实例 A 所做的更改将立刻呈现在实例 B 和 C 上(如果它们访问该字段). 2.属性 属性是 C# 中的一等公民. 借助该语言所定义的语法,开

js---17继承中方法属性的重写

function F(){}; var f = new F(); f.name = "cf"; f.hasOwnProperty("name");//true F.prototype.age = 22; f.hasOwnProperty("age");//false,age是原型对象的属性,name是F对象的属性,不是同一个.hasOwnProperty是对象的方法 F.prototype.isPrototypeOf(f);//true //多态

44. C# -- 索引器和属性

1.属性 所谓属性其实就是特殊的类成员,它实现了对私有类域的受控访问.在C#语言中有两种属性方法,其一是get,通过它可以返回私有域的值,其二是set,通过它就可以设置私有域的值.比如说,以下面的代码为例,创建学生姓名属性,控制对name字段的受控访问: using System; public class Student  {      private string name;      /// <summary>      /// 定义学生的姓名属性     /// </summar

描述一下C#中索引器的实现过程,是否只能根据数字进行索引?

不是.可以用任意类型. 索引器是一种特殊的类成员,它能够让对象以类似数组的方式来存取,使程序看起来更为直观,更容易编写. 1.索引器的定义 C#中的类成员可以是任意类型,包括数组和集合.当一个类包含了数组和集合成员时,索引器将大大简化对数组或集合成员的存取操作. 定义索引器的方式与定义属性有些类似,其一般形式如下: [修饰符] 数据类型 this[索引类型 index] { get{//获得属性的代码} set{ //设置属性的代码} } 修饰符包括 public,protected,priva

C#中索引器的作用和实现。

官方描述:索引器允许类或结构的实例就像数组一样进行索引.索引器形态类似于,不同之处在于它们的取值函数采用参数. 这一功能在创建集合类的场合特别有用,而在其他某些情况下,比如处理大型文件或者抽象有些资源等,能让类具有类似数组行为也是非常有用的. 大致结构: <modifier><return type> this [argument list] { get{//读} set{//写} } 其中: modifier:修饰符,如:public,private,protected this

C#中的索引器

无法通过方法来知道索引器的长度,只能设定一个固定的长度,所以索引器的作用只能是初始化一个长度有限的数组,也可以用string来当键 class Program { static void Main(string[] args) { man mm = new man(); mm[0] = "jingya"; mm[1] = "dongbao"; mm[2] = "xiaolizi"; mm[3] = "xializi"; for

【Unity|C#】基础篇(7)——属性(Property) / 索引器(Indexer)

[学习资料] > 在线文档 官方文档:https://docs.microsoft.com/zh-cn/dotnet/csharp/ 菜鸟教程(高级教程):https://www.runoob.com/csharp/csharp-tutorial.html > 视频教程 腾讯学院.Siki学院         > 书籍 <C#图解教程>(第6章):https://www.cnblogs.com/moonache/p/7687551.html [学习内容] > 菜鸟教程:

接口、索引器、Foreach的本质(学习笔记)

接口 什么是接口? 接口代表一种能力,和抽象类类似但比抽象类的抽象程度更高! 接口的定义: 1 public interface IEat//定义一个接口 2 { 3 void Eat(string food);//为该接口定义一种能力 4 } 接口的定义 从上边的例子中我们可以看到,接口中的方法是没有方法体的甚至连访问修饰符都没有.而且在接口中只能有方法.属性.索引器及事件! 接口的使用: 1 public class Dog:IEat //Dog类实现IEat接口 2 { 3 //Dog类实