我正在尝试设置enum
数据库中的所有内容都是描述。
public enum testcode
<Description("T60")> passed
end enum
会出错:
tcode = CType(System.Enum.Parse(GetType(testcode),tstcode),testcode)
如何仅使用T60的desc设置tcode?我无法改变枚举或数据库的任何内容。
发布于 2018-12-05 10:47:32
您需要使用反射来实现此功能。
GetType> GetFields> GetCustomAttributes
这是一个使用示例LINQ
:
Imports System.Reflection
Public Enum TestCode
<Description("T60")> Passed
End Enum
Dim tcode As TestCode = (
From field As FieldInfo In GetType(TestCode).GetFields()
From attribute As DescriptionAttribute In CType(field.GetCustomAttributes(GetType(DescriptionAttribute), False), DescriptionAttribute())
Where attribute.Description = "T60"
Select CType(field.GetValue(Nothing), TestCode)
).FirstOrDefault()
https://stackoverflow.com/questions/-100005109
复制相似问题