HttpStatusCodes Enum
В вашем конкретном вопросе о HttpStatusCodes
.
На самом деле происходит то, что перечисление «содружественное для чтения кода», такое как StatusCodes.400NotFound
, является просто представлением целочисленного значения 400
. Вы можете просто вручную использовать целочисленное значение в качестве аргумента, если хотите, но тогда кто-то, кто читает ваш код, может не понимать код состояния HTTP.
Например, если я просто написал в своем коде код состояния 422
, легко ли его прочитать / понять? Наверное, не очень хорошая идея. У того, кто читает ваш код, больше шансов, если вы используете StatusCode.422UnprocessableEntity
.
Каковы действительные коды состояния HTTP?
Если вы отправляете ответ HTTP, вы можете назначить любое из целочисленных значений, перечисленных здесь ... https://en.wikipedia.org/wiki/List_of_HTTP_status_codes
Неназначенные или поведение по умолчанию?
Не зная, каким методом или каким сервером вы пользуетесь, ваш вопрос о «что произойдет, если он не назначен». Обычный ответ заключается в том, что сервер ответит кодом состояния 200 (ОК) по умолчанию.
Использование нестандартных кодов ответа
Это действительно зависит от того, что вы делаете, но использование значений кода ответа, которые не являются частью стандарта (например, -999), может (или не может) привести к ошибке, но вам следует избегать этого, поскольку это не поддерживаемый стандарт.
Nullable Enum
Для HttpStatusCodes во всех случаях (я когда-либо сталкивался) вы не можете присвоить null
значение HttpResponse
, так как тип свойства целочисленный.
Обратите внимание, что то, что я говорю, относится к назначению значения кода состояния для объекта HttpResponse. Вы можете прочитать другие ответы о типичном вопросе nullable перечислений.