Как преобразовать строку OrchestrationRuntimeStatus в int?

#c# #azure #.net-core

Вопрос:

orchestrationRuntimeStatus принимает 8 значений, которые Отменены, Завершены, Продолжены заново, Завершены неудачно, Ожидаются, Выполняются, Завершены и неизвестны, которые представлены 4, 1, 2, 3, 6, 0, 5 и -1 соответственно. Когда я проверил возвращаемое значение функции, возвращаемым типом которой является orchestrationRuntimeStatus, возвращаемое значение приходит как завершенное, запущенное и т. Д…. Есть ли способ получить тот же тип возвращаемого значения, где возвращаемое значение равно 1, 0 и т.д…

https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.webjobs.orchestrationruntimestatus?view=azure-dotnet-legacy

Комментарии:

1. Это перечисление, а не строка. Это уже целое число. Если вы хотите проанализировать строку в перечислении, используйте Enum.Parse . Любой сериализатор JSON может обрабатывать перечисления. Значение перечисления можно непосредственно рассматривать как базовое целое число. Как выглядит ваш код? В чем же на самом деле проблема? Почему ты думаешь, что это веревка? Вы пытаетесь использовать ответ JSON без его десериализации?

2. При печати возвращенного вывода значения поступают как Завершенные, запущенные и т. Д… Я хочу, чтобы они пришли как 1,0 и т. Д… Я подумал, что читателю легко понять мою проблему, если я скажу строку и целое число, вот почему я сказал строку и целое число в вопросе. Я хочу, чтобы мой вывод выглядел как 1,0, но не как завершенный, запущенный. Есть ли способ сделать это? Как десериализовать вывод?

3. Перед печатью приведите перечисление к значению int. Напр. Console.WriteLine((int)orchestrationRuntimeStatus);

4. Я не хочу использовать гипс. Я хочу десериализовать его. Как дезериализовать его?

5. Вам не нужно будет ничего лишнего, если вы используете DTO с правильным типом. I don't want to use the cast. почему нет? Это перечисление уже является целым числом. Если вы сохраните его в int переменной, он просто будет работать. Если вы передадите его в int параметр, он просто будет работать. Опубликуйте свой код . Возможно, вам ничего не придется делать