Ваши URI не соответствуют соглашению RESTful.Честно говоря, я не могу понять, как вы вообще когда-либо делали эту работу, потому что та же проблема должна была привести к ASP.NET Web Api, но, возможно, вам просто повезло в способе маршрутизации в ASP.NET.Веб-интерфейсASP.NET Core обрабатывает маршрутизацию совершенно по-разному.
В любом случае, маршрут для списка из нескольких продуктов должен , а не содержать идентификатор в фактическом URI.Другими словами:
/api/values - Multiple values
/api/values/{id} - Single value
Для таких вещей, как фильтрация, упорядочение и т. Д. Несколько записей, они должны быть частью строки запроса.Это включает что-то вроде startRecordId
:
/api/values?startRecordId={id}
Устраните неоднозначность в ваших маршрутах, и у вас не возникнет проблем.Длинный и короткий, у вас не может быть двух маршрутов, принимающих Guid
в одном и том же сегменте пути, даже если это необязательно для одного.Переместите startRecordId
в строку запроса, что в любом случае является правильным способом сделать это, и все готово.