繁体   English   中英

具有字符串名称的枚举数组

[英]Enum array with string name

您好,我在复选框列表中有一个枚举数组(用于多个 select 项目)。 我想为复选框 label 显示一个字符串基本名称。 我无法在我的视图代码中显示字符串开关:

    public enum ServiceArea
    {
        // [Description("Not Completed")]
        AllOver,
        North,
        south,
        Center,
        Sharon,
    }
    public class SupplayerViewModel
    {
      ....

        public ServiceArea [] serviceArea { get; set; }
        public ServiceArea  servArae { get; set; }
        public string EnumfriendlyName => servArae.GetUserEnumName();
    }
    public static class EnumfriendlyName
    {
        public static string GetUserEnumName(this ServiceArea serviceArea)
        {
            switch (serviceArea)
            {
                case ServiceArea.AllOver: return "All Over ";
                case ServiceArea.Center:return "cc ccc";
                case ServiceArea.North:return "n n n";
                case ServiceArea.Sharon:return "sh sh";
                case ServiceArea.south:return "ss s";
            }

            return "Failure!!";
        }
    }
    public class Supplayer
    {
     ...
        public  ServiceArea [] serviceArea { get; set; }

       ...
    }

我的 razor 视图:

 @foreach (var item in Enum.GetValues(typeof(ServiceArea)))
                {
                    <label>
                        <i class="fas fa-street-view"></i> @item
                        <input type="checkbox" value="@item" name="ServiceArea" />
                    </label>
                }

很好地得到它@EnumfriendlyName.GetUserEnumName((ServiceArea)@item)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM