Как сделать так, чтобы маршрут для web api .NET framework содержал '? и =' в url-адресе вместо просто '/' ?
теперь в URL - адресе я набираю:
localhost/api/controller/1/34.5/31.2/
но это то, чего я хочу.
localhost/api/controller?Id=1&num1=34.5&num2=31.2
Что я уже пробовал:
Right now this is my Route <pre> [HttpGet] [Route("api/Controller/{Id}/{num1}/{num2}/", Name = "GetInfo")]
Maciej Los
Пожалуйста, прочтите это: Привязка параметров в Web API[^]
Member 14800672
Привет,
да я читал его но он ничего не уточняет
Вот URL-адрес, который я попробовал: https://localhost:****/api/Customer?Id=1&num1=1&num2=1.2/
но я получаю эту ошибку
Не было найдено ни одного HTTP ресурса, соответствующего URI запроса
Однако это работает, если я использую косую черту: https://localhost:****/по API/поддержки/идентификатор/1/поля num1/1.1/пит2/3.2/
Вот маршрут для моего метода:
[HttpGet]
[Маршрут("АПИ/поддержки/{ИД}/{num1 как}/{пит2}/", имя = "метод getcustomers")]
метод getcustomers публичных ihttpactionresult с(int идентификатор, двухместная поля num1, пит2 двойной)
{
}
А вот мой регистрационный метод:
общественная статический недействительным зарегистрироваться(HttpConfiguration конфиг)
{
// Конфигурация и сервисы веб-API
// Маршруты веб-API
конфиг.MapHttpAttributeRoutes();
конфиг.Маршруты.MapHttpRoute(
имя: "DefaultApi",
routeTemplate: "api/{controller}/{Id}/{num1}/{num2}",
по умолчанию: new {
Id = RouteParameter.Необязательный,
num1= RouteParameter.Необязательный,
num2= RouteParameter.Необязательный
}
);
}