Я обновился до OData V4, и я понял, что соглашения о маршрутизации изменились. Таким образом, вместоУсловные обозначения веб-API 2.2 и OData V4
http://somesite.com/api/products/1
Вы бы следующие
http://somesite.com/api/products(1)
Теперь это хорошо для новых приложений, идти вперед, но мы должны поддерживать традиционные URL, для устаревших приложений. Есть ли способ поддерживать как url, так и традиционный URL-адрес?
Если у меня есть следующий пример
[ODataRoute("{key}")]
public async Task<IHttpActionResult> Put([FromODataUri] string key, Dealer dealer)
{
// some logic code here
}
Я получаю следующую ошибку
The path template '{key}' on the action 'Put' in controller 'Dealers' is not a valid OData path template. Resource not found for the segment '{key}'
Вы пробовали '[ODataRoute (" Продукты/{key} ")]'? –
Ya у меня - все тот же выпуск. – TYRONEMICHAEL
В соглашении URL OData поддерживается только http://somesite.com/api/products(1). Я не уверен, что «http://somesite.com/api/products/1» - это то, что вы можете с предыдущей версией OData. Вы упомянули о том, что вы «обновляете» до OData V4, обновляетесь ли вы от старой версии OData или чистого веб-API? – QianLi