Маршруты веб-API конфликтуют друг с другом - PullRequest
0 голосов
/ 10 апреля 2020

Извиняюсь, если об этом уже спрашивали, возможно, я недостаточно хорошо искал.

Я использую маршрутизацию атрибутов. В основном у меня есть
[Route("api/studies")], который дает мне список типов обучения.
[Route("api/studies/{id}/{detail?}")], который дает мне одно исследование. Здесь есть необязательный параметр detail, который определяет уровень детализации.
[Route("api/studies/{id}/subjects")] Это дает мне список предметов в исследовании.

Проблема в том, что когда я проверяю маршрут предметов, он вызывает /api/studies/{id}/{detail?} и передает "предметы" в качестве параметра детализации. Я полностью понимаю, почему, мне просто любопытно, если есть способ предотвратить это.

1 Ответ

0 голосов
/ 10 апреля 2020

Хорошо, ребята, я понял это. Прежде всего, я не назначал им заказы. Я сделал это, все еще не работал. НО ... не совсем честно с моим постом, я пропустил некоторые вещи, которые я не считаю уместными. У испытуемых было несколько необязательных параметров, которые были целыми числами, и я подумал, что воткнуть их так можно:
public List<Subject> Subjects(long id, int? limit, int? offset)

Очевидно, этого недостаточно. Должен быть:
public List<Subject> Subjects(long id, int? limit = null, int? offset = null)

Не знал, что я должен был назначить их как ноль!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...