Что уровень обслуживания должен возвращать контроллеру при проверке данных на уровне обслуживания для API .NET Core?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Гость
 Что уровень обслуживания должен возвращать контроллеру при проверке данных на уровне обслуживания для API .NET Core?

Сообщение Гость »


У меня есть небольшой автомобильный API, состоящий из контроллера, службы и репозитория. Я хочу проверить данные на уровне службы и вернуть 200, 404 или 400 с небольшим сообщением о том, в чем проблема, от услуга. Другими словами, я хочу перенести всю логику с контроллера на сервисный уровень.

Как я могу вернуть код состояния и, если это ошибка, то, что ее вызвало, с уровня обслуживания на контроллер?

Метод API-контроллера:

[HttpGet("GetById/{Id:int}", Name = "GetCar")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status404NotFound)] [ProducesResponseType(StatusCodes.Status400BadRequest)] общедоступный IActionResult GetById (int Id) { если (идентификатор u.Id == Id); если (автомобиль == ноль) { ModelState.AddModelError("CarNotFound", "Автомобиль не найден!"); вернуть NotFound(ModelState); } вернуть ОК (автомобиль); } Метод сервисного уровня:

public IActionResult GetById (int carId) { возвращаться; } Метод уровня репозитория:
Общественный автомобиль? GetById(int carId) { return _db.Car.FirstOrDefault(c => c.Id == carId); }
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»