Не работает запрос POST в контроллере WebAPI

Заголовок вопроса не совсем правильно описывает проблему, POST отрабатывает, но не так, как надо, сейчас поясню. Есть модель данных User:

public class User
{
    public int ID { get; set; }

    [Required]
    public string Name { get; set; }

    public int Age { get; set; }

    public string Profession { get; set; }
}

И вот такой контроллер:

[Route("/api/[controller]")]
public class UsersController : Controller
{
    List<User> Users { get; set; }

    public UsersController()
    {
        Users = new List<User>(new[]
        {
            new User() {ID = 1, Name = "Victor", Age = 22, Profession = "waiter"},
            new User() {ID = 2, Name = "Igor", Age = 31, Profession = "programmer"},
            new User() {ID = 3, Name = "Petr", Age = 12, Profession = "none"}
        }); 
    }

    [HttpGet]
    public IEnumerable<User> GetAllUsers() => Users;

    [HttpPost]
    public IActionResult Post(User user)
    {
        if (!ModelState.IsValid) return BadRequest(ModelState);

        user.ID = Users.Count() + 1;
        Users.Add(user);
        return CreatedAtAction(nameof(GetAllUsers), new {id = user.ID}, user);
    }

    [HttpPost("addUser")]
    public IActionResult AddUser([FromBody] User user) => Post(user);
}

Итак, запустим проект и воспользуемся Swagger'ом - делаем Get запрос, всё ок:

введите сюда описание изображения

Теперь сделаем POST запрос + пройдемся отладкой по коду:

введите сюда описание изображения

введите сюда описание изображения

Итак, вроде объект создается и в отладке видно, что в коллекции Users 4 объекта, то есть добавление объекта произошло. Теперь делаем опять get запрос и...

введите сюда описание изображения

Не могу понять в чем проблема, я что-то не так сделал/пропустил/неправильно тестирую запросы или дело не во мне...

P.S. я ориентируюсь на пример из ютуба, там в принципе такой же код, как и у меня, вроде как.


Ответы (0 шт):