Скажите, что у меня есть следующие действия;Ошибка маршрутизации ASP.NET WebAPI
// api/products
public IEnumerable<ProductDto> GetProducts()
public ProductDto GetProduct(int id)
// api/products/{productId}/covers
public IEnumerable<CoverDto> GetCovers(int productId)
Что бы лучшим способом создать маршрут для использования в качестве ярлыка для «мастер» продукт? т.е. api/products/master
Я попытался добавить ведущий контроллер и маршрутизация выше к нему, но я получаю следующее сообщение об ошибке:
The parameters dictionary contains a null entry for parameter 'id'
of non-nullable type 'System.Int32' for method 'ProductDto GetProduct(Int32)'
in 'ProductsController'. An optional parameter must be a reference type,
a nullable type, or be declared as an optional parameter.
Чтобы исправить это, я попытался обновить нормальный маршрут продукта до api/products/{id:int}
, но безрезультатно.
Я хотел бы получить следующее: где единственное различие заключается в том, что «мастер» продукт будет получен с помощью кода, не ид
api/products
api/products/1
api/products/1/covers
api/products/master
api/products/master/covers
Спасибо, но, как я уже сказал, продукт «мастер» должен быть получен с помощью ** кода продукта **, а не идентификатора 999, как у вас. Это означало бы другое действие контроллера, но я не знаю, как это сделать. –
Думаю, я не знаю, что вы подразумеваете под кодом продукта. Каков пример кода продукта? –