C ENUM列舉 遍歷獲取值 名稱 註解

2021-10-11 00:20:30 字數 1654 閱讀 6749

先定義乙個類來儲存資料:

public class iteminfo

public string name

public string description

}

要獲取的列舉如下:

public enum myenum
迴圈獲取的**如下:

//反射 迴圈 獲取資料

listitemlist = new list();

type t = typeof(myenum);

fieldinfo fieldinfos= t.getfields();

foreach(var item in fieldinfos);

//獲取值

iteminfo.id = (int)t.invokemember(item.name, bindingflags.getfield, null, null, null);

//獲取註解

type typedescription = typeof(descriptionattribute);

descriptionattribute arr = item.getcustomattributes(typedescription, true).firstordefault() as descriptionattribute;

iteminfo.description = arr?.description ?? "";

itemlist.add(iteminfo);

}}

完整**:

public class program

console.readline();}}

public enum enumsuborderstate

[serializable]

public class enumiteminfo

public string name

public string description

}public class commonenumtool

;//獲取值

iteminfo.id = (int)t.invokemember(item.name, bindingflags.getfield, null, null, null);

//獲取註解

type typedescription = typeof(descriptionattribute);

descriptionattribute arr = item.getcustomattributes(typedescription, true).firstordefault() as descriptionattribute;

iteminfo.description = arr?.description ?? "";

itemlist.add(iteminfo);}}

return itemlist;

}/// /// 根據列舉值獲取列舉description

///

///

///

///

public static string getenumdescriptionfromvalue(t val)

}

根據列舉的型別名稱獲取列舉型別列表

前端進行搜尋或其他操作時需要獲取列舉列表,每個列舉寫乙個介面比較繁瑣,所以這裡根據列舉型別名獲取列表 以下為 示例 public class enumdto 值 public int value 描述 public string description using system.componentm...

C 根據列舉的key值獲取列舉name名稱

public enum subjectenum 語文 1,數學 2,英語 3,物理 4,化學 5,地理 6,生物 7,歷史 8,政治 9,根據數值獲取列舉的name public string getenumnamebykey int key return subjectenum.getname t...

根據class獲取值 根據關鍵字爬取GO注釋

為了查詢某個研究領域的相關資訊,生物學家往往要花費大量的時間。與此同時由於不同資料庫之間的資訊可能不同步或者術語不一樣,這使得資訊的檢索更加的麻煩。如果讓人來做還勉強能查,但是讓機器來查詢的話一切就會變的無章可循。gene ontology go 就是為了解決這種問題而發起的乙個專案 每乙個go t...