C \ # 에서 Enum 매 거 진 형식의 간단 한 사용

2372 단어 기술 축적
매 거 유형의 소개: 
매 거 유형 은 특정한 상수 로 구 성 된 데이터 구조 로 값 형식의 특수 한 형식 으로 지정 한 상수 집합 으로 구 성 된 데이터 형식 이 필요 할 때 매 거 유형 을 사용 합 니 다.매 거 진 성명 은 byte, sbyte, short, ushort, int, uint, long 또는 ulong 유형 을 대응 하 는 기본 유형 으로 명시 할 수 있 습 니 다.기본 형식 을 명시 적 으로 설명 하지 않 은 매 거 진 성명 은 해당 하 는 기본 유형 이 int 임 을 의미 합 니 다. 
주의 점: 
1. 할당 되 지 않 은 매 거 진 형식 에 대해 성명 의 첫 번 째 매 거 진 구성원 의 묵 값 은 0 입 니 다.이후 의 매 거 진 구성원 값 은 이전 매 거 진 구성원 (텍스트 순서대로) 의 값 을 1 로 더 해서 얻 은 것 이다. 
2. 여러 개의 매 거 진 구성원 이 같은 값 을 가 질 수 있 도록 합 니 다.할당 한 매 거 진 구성원 의 값 을 표시 하지 않 았 습 니 다. 항상 이전 매 거 진 구성원 의 값 + 1 입 니 다. 
3 사용 시 유형 전환 에 주의 하 세 요.
매 거 유형의 본질은 모두 숫자 유형 임 을 알 수 있다.표시 할 때 매 거 진 값 을 해당 하 는 문자열 로 표시 하려 면 아래 는 간단 한 해결 방법 입 니 다.
public enum DataTypeId
    {
        [StringValue("Money")]
        Money = 0,
        [StringValue("Number")]
        Number = 1,
        [StringValue("Datetime")]
        Datetime = 2,
        [StringValue("LongText")]
        LongText = 3,
        [StringValue("ShortText")]
        ShortText = 4,
        [StringValue("IdeaType")]
        IdeaType = 5,
        [StringValue("Status")]
        Status = 6
    }

    public class StringValue : System.Attribute
    {
        private string _value;

        public StringValue(string value)
        {
            _value = value;
        }

        public string Value
        {
            get { return _value; }
        }

    }

    public static class StringEnum
    {
        public static string GetStringValue(Enum value)
        {
            string output = null;
            Type type = value.GetType();

            FieldInfo fi = type.GetField(value.ToString());
            StringValue[] attrs =
               fi.GetCustomAttributes(typeof(StringValue),
                                       false) as StringValue[];
            if (attrs.Length > 0)
            {
                output = attrs[0].Value;
            }

            return output;
        }
    }

사용 할 때 는 상응하는 방법 만 사용 하면 된다. StringEnum. GetStringValue (DataTypeID. Money) 가 출력 한 문자열 은 이 MyDataTypeId 매 거 진 값 에 대응 하 는 문자열 입 니 다.
매 거 진 값 에 대응 하 는 문자열 을 얻 을 수 있 는 간단 한 방법 도 있 습 니 다. DataTypeID. Money. ToString () 은 Money 문자열 을 되 돌려 줍 니 다.웹 페이지 에 표 시 될 때 DataTypeID. Money 는 0 을 표시 하고 DataTypeID. Money 는 0 을 표시 합 니 다.ToString () 은 Money 라 는 문자열 을 되 돌려 줍 니 다.

좋은 웹페이지 즐겨찾기