Найдено результатов: 6

Преобразование enums в удобочитаемые значения

Кто-нибудь знает, как преобразовать значение enum в читаемое человеком значение?

Например:

ThisIsValueA должно быть "This is Value A".

c#   enums   human-readable    

481   7   03:12, 14th August, 2020


Проверка Значений Перечисления

Мне нужно проверить целое число, чтобы узнать, является ли оно допустимым значением перечисления.

Как лучше всего это сделать в C#?

c#   validation   enums    

530   10   19:09, 26th August, 2020


Преобразование строки в перечисление в C#

Как лучше всего преобразовать строку в значение перечисления в C#?

У меня есть тег HTML select, содержащий значения перечисления. Когда страница будет опубликована, я хочу взять значение (которое будет в виде строки) и преобразовать его в значение перечисления.

В идеальном мире я мог бы сделать нечто подобное:

StatusEnum MyStatus = StatusEnum.Parse("Active");

но это неверный код.

c#   string   enums    

392   1   08:37, 5th August, 2020


Кто-нибудь знает быстрый способ добраться до пользовательских атрибутов по значению enum?

Это, вероятно, лучше всего показать на примере. У меня есть перечисление с атрибутами:

public enum MyEnum {

    [CustomInfo("This is a custom attrib")]
    None = 0,

    [CustomInfo("This is another attrib")]
    ValueA,

    [CustomInfo("This has an extra flag", AllowSomething = true)]
    ValueB,
}

Я хочу добраться до этих атрибутов из экземпляра:

public CustomInfoAttribute GetInfo( MyEnum enumInput ) {

    Type typeOfEnum = enumInput.GetType(); //this will be typeof( MyEnum )

    //here is the problem, GetField takes a string
    // the .ToString() on enums is very slow
    FieldInfo fi = typeOfEnum.GetField( enumInput.ToString() );

    //get the attribute from the field
    return fi.GetCustomAttributes( typeof( CustomInfoAttribute  ), false ).
        FirstOrDefault()        //Linq method to get first or null
        as CustomInfoAttribute; //use as operator to convert
}

Так как это использует отражение, я ожидаю некоторую медлительность, но это кажется беспорядочным, чтобы преобразовать значение enum в строку (которая отражает имя), когда у меня уже есть его экземпляр.

У кого-нибудь есть лучший способ?

c#   .net   reflection   enums   attributes    

490   2   16:38, 3rd August, 2020


Указание перечисления mySQL в модели Django

Как мне определить и использовать ENUM в модели Django?

python   mysql   django   django-models   enums    

583   8   21:40, 9th August, 2020


Приведение int к enum в C#

Как можно int привести к enum в C#?

c#   enums   casting    

905   24   07:03, 17th August, 2020