Mycroft Holmes Ответов: 1

Asp.net ядро 2.2 несколько запросов get


Я использовал этот учебник, чтобы начать с core 2.2 Учебник: создание веб-API с помощью ASP.NET Core MVC | Microsoft Docs[^], спилил серийные номера и изменил цвет, но тот же стиль.

Все шло хорошо, пока я не захотел получить отфильтрованный выбор, поэтому мне нужен второй (и третий). Используя почтальона я получить дубликат сделать ошибку
https://localhost:44334/api/userdetails?FleetID=1

В Startup.cs нет маршрутизации

Что я уже пробовал:

Контроллер начинается с
[Route("api/[controller]")]
[ApiController]
public class UserDetailsController : ControllerBase
    {
		DAL.UserDetails dsUserDetails = new UserDetails();

		[HttpGet]
		public ActionResult<IEnumerable<UserDetailsDB>> GetUsers()
		{
			IEnumerable<UserDetailsDB> lResult = dsUserDetails.UserDetailsList();
			return lResult.ToList();
		}


Второй GET с дополнительным фильтром - каково оформление для этого или вызывающий синтаксис для GET
[HttpGet]
public ActionResult<IEnumerable<UserDetailsDB>> GetUserForFleet([FromQuery] int FleetID)
{
  IEnumerable<UserDetailsDB> lResult = dsUserDetails.UserDetailsForFleet(FleetID);
  return lResult.ToList();
}

1 Ответов

Рейтинг:
5

Wastedtalent

Поместите название маршрута в декоратор:

[HttpGet("GetUserForFleet")]

Так что вы можете позвонить:

https://localhost:44334/api/UserDetails/GetUserForFleet?FleetID=1


Mycroft Holmes

Спасибо - последнее препятствие на пути к тому, чтобы мой POC был готов, за исключением того, что мне нужно защитить API прямо сейчас [смех]