Мне нужно запустить запрос REST-запроса к контроллеру веб-API, используя следующий формат:
http://path/name.json?foo.bar.text=aCertainValue
(Я не могу изменить этот формат, так как он зависит от внешних провайдеров).
У меня проблема в том, что я не могу получить результат запроса.
Я пробовал следующие варианты в коде моего сервера (написанном на C#):
[HttpGet]
[Route(Name = "name.json")]
public List<SpaceFound3rdParty> findRes([FromUri (Name = "foo.bar.text")] string text)
{...}
а также
[HttpGet]
[Route("name.json")]
public List<SpaceFound3rdParty> findRes([FromUri (Name = "foo.bar.text")] string text)
{...}
ни один из них не преуспел.
Если я укажу имя без точек (т.е. имя без пути) и использую /? в качестве разделителя между именем пути и именем ресурса, я могу успешно получить ресурс. Однако это не вариант (я должен использовать ?, даже если в запросе есть единственный ресурс.
Как я могу изменить сервер C# для извлечения ресурса при сохранении запрошенного формата pathName?resourceName?





Вставьте сюда свой RouteConfig.cs. Вы используете маршрутизацию атрибутов, поэтому вам может потребоваться зарегистрировать эти действия, вызвав эту вспомогательную функцию «MvcAttributeRoutes()» из файла RouteConfig.cs.
Надеюсь, это решит!