DelphiniumVC

Форк
0
/
BaseApiController.cs 
33 строки · 847.0 Байт
1
using Application.Core;
2
using MediatR;
3
using Microsoft.AspNetCore.Mvc;
4

5
namespace API.Controllers
6
{
7
    [ApiController]
8
    [Route("api/[controller]")]
9
    public class BaseApiController : ControllerBase
10
    {
11
        private IMediator _mediator;
12

13
        protected IMediator Mediator => _mediator ??=
14
            HttpContext.RequestServices.GetService<IMediator>();
15

16
        protected ActionResult HandleResult<T>(Result<T> result)
17
        {
18
            if(result is null)
19
            {
20
                return NotFound();;
21
            }
22
            if (result.IsSuccess && result.Value !=null)
23
            {
24
                return Ok(result.Value);
25
            }
26
            if (result.IsSuccess && result.Value is null)
27
            {
28
                return NotFound();
29
            }
30
            return BadRequest(result.Error);
31
        }
32
    }
33
}

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.