Я повторно использую службу WCF, и я предпочитаю использовать WebAPI 2.2 + OData v4. Проблема, с которой я сталкиваюсь, заключается в том, что мне нужен маршрут, который содержит «_», и я не могу его реализовать. В настоящее время у меня есть это:Как изменить маршрут в проекте WebApi + Odata
public class AnnotationSharedWithController : ODataController
{
...
[EnableQuery]
public IQueryable<AnnotationSharedWith> Get()
{
return _unitOfWork.AnnotationSharedWith.Get();
}
...
}
и мои WebApiConfig.cs выглядит следующим образом:
public static void Register(HttpConfiguration config)
{
config.MapODataServiceRoute("webservice",null,GenerateEdmModel());
config.Count();
}
private static IEdmModel GenerateEdmModel()
{
var builder = new ODataConventionModelBuilder();
builder.EntitySet<AnnotationSharedWith>("annotation_shared_with");
return builder.GetEdmModel();
}
Когда я выполняю GET запрос я получать следующее сообщение об ошибке
{ "Сообщение": " Ресурс HTTP не найден, который соответствует запросу URI 'http://localhost:12854/annotation_shared_with'. "," MessageDetail ": " Тип не найден, который соответствует контроллеру с именем 'annotation_shared_with'. " }