C# 如何获取enum';从整数中选择显示名称
我一直在尝试获取C# 如何获取enum';从整数中选择显示名称,c#,html,asp.net-core,razor,enums,C#,Html,Asp.net Core,Razor,Enums,我一直在尝试获取[Display(Name='')中的值,以使用整数输入进行显示。我已经尝试了post所说的方法,但我也遇到了错误——我想这是因为我在.NETCore中,而不是在Framework中。以下是试图显示显示名称的代码: @Enum.GetName(typeof(StateEnum),Timelineinfo.State)//Timelineinfo.State是一个整数 枚举(由于太长而被截断): 公共枚举状态枚举 { 阿拉巴马州阿拉巴马州[显示(Name=“美属萨摩亚”)]亚利桑
[Display(Name='')
中的值,以使用整数输入进行显示。我已经尝试了post所说的方法,但我也遇到了错误——我想这是因为我在.NETCore中,而不是在Framework中。以下是试图显示显示名称的代码:
@Enum.GetName(typeof(StateEnum),Timelineinfo.State)//Timelineinfo.State是一个整数
枚举(由于太长而被截断):
公共枚举状态枚举
{
阿拉巴马州阿拉巴马州[显示(Name=“美属萨摩亚”)]亚利桑那州美属萨摩亚,
阿肯色州、加利福尼亚州、科罗拉多州、康涅狄格州、特拉华州、,
[显示(Name=“哥伦比亚特区”)]哥伦比亚特区,//继续。。。
}
编辑如果Timelineinfo.State
是一个整数,则可以使用invoke:
var displayName = GetEnumDisplayName((StateEnum)Timelineinfo.State);
这回答了你的问题吗?谢谢你的回答。这是可行的,除非我不能仅仅说“美属萨摩亚”。StateEnum后面的内容将根据我所在的页面而变化。但是,我可以通过执行
@Enum.GetName(typeof(StateEnum),Timelineinfo.State)来实现这一点。
有什么方法可以实现类似于:GetEnumDisplayName(StateEnum.Enum.GetName(typeof(StateEnum),Timelineinfo.State)的功能吗
?@Bubinga是Timelineinfo.State
一个StateEnum
值?如果是,那么你可以调用GetEnumDisplayName(Timelineinfo.State)
@Bubinga我已经编辑了我的答案。请检查它。对不起,Timelineinfo.State是一个int。@Bubinga检查编辑。GetEnumDisplayName((StateEnum)Timelineinfo.State)
var displayName = GetEnumDisplayName(StateEnum.AmericanSamoa);
var displayName = GetEnumDisplayName((StateEnum)Timelineinfo.State);