Я столкнулся с этой проблемой, из-за которой по какой-то причине я не могу использовать свойства System.Net.Http.HttpMethod
в операторе switch
. Забавно, но я могу использовать его в том же методе, вне выражения switch
. Посмотрите на мой метод:
private ObjectResult DeterminePositiveResponseType<T>(T response)
{
Console.WriteLine(HttpMethod.Get.ToString());
return HttpContext.Request.Method switch
{
HttpMethod.Get.ToString() => Ok(response),
HttpMethod.Post.ToString() => Created("", response)
};
}
Цель состоит в том, чтобы вернуть соответствующие ObjectResult
в зависимости от того, какой тип запроса поступил к API.
HttpMethod.Get.ToString()
должен просто возвращать строку "GET"
и это происходит в рамках Console.WriteLine
метода. Тот же фрагмент кода внутри оператора switch выдает ошибку:
Имя типа «Get» не существует в типе «HttpMethod»
Я понятия не имею, почему это происходит, и буду очень признателен, если кто-нибудь сможет мне это объяснить. Спасибо.