Herman<T>.Instance Ответов: 0

Проблема Odata v3 v4 на пользовательских контроллерах


Всем Привет,

Я создал WEBAPI (ASP.NET и с помощью Microsoft.сеть САШ.Пакеты OData должны иметь версию OData V4.
В моей определенными контроллерами службы (на основе хранимой процедуры с помощью сущности рамок) У меня есть методы Get для извлечения данных. Я использую аннотацию
[ODataRoute("GlobalProjectSearches?searchText={searchText}")]

В файле webapi.config контроллер определяется следующим образом:
modelBuilder.EntitySet<GlobalProjectSearch_Result>("GlobalProjectSearches")
               .EntityType.Collection.Action("Get")
               .ReturnsCollectionFromEntitySet<GlobalProjectSearch_Result>("GlobalProjectSearches")
               .Parameter<string>("searchText");


Это работает нормально, и публикация в IIS вообще не является проблемой.
При запуске проекта я могу вызвать GlobalProjectSearches с ним или без него searchText параметр.
В IIS он показывает url-адрес, например:
http://wrk2198:80/MarinServices/GlobalProjectSearches?searchText='Foo'


У меня есть веб-сайт, который подключается к OData webapi и при вызове GlobalProjectSearches он создает URL-адрес, например
http://wrk2198:80/MarinServices/GlobalProjectSearches(searchText='Foo')
Этот URL-адрес, конечно же, приводит к ошибке 404

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

Как я могу создать правильный URL-адрес веб-сайта при вызове подключенной службы?
Так почему же мой сайт не придерживается маршрута OData, заданного контроллеру?

0 Ответов