Маршрутизация на основе атрибутов, аргументы с разными именами для переменных - aspnetcore - PullRequest
0 голосов
/ 09 января 2019

Мне нужно сделать это

[Route("/api/highfive/{person_name}")]
public IActionResult HighFive(string personName){
   //do stuff
}

Есть ли способ сопоставить переменную personName с тем, что указано как person_name из маршрута?

Работают два нижеприведенных параметра - при условии совпадения аргумента маршрута и имени переменной (что имеет смысл).

[Route("/api/highfive/{person_name}")]
public IActionResult HighFive(string person_name){
   //do stuff
}

[Route("/api/highfive/{personName}")]
public IActionResult HighFive(string personName){
   //do stuff
}

Но почему ты этого хочешь ??

  • Swagger генерирует документацию, которая должна соответствовать документации предыдущего API, она заменяет - и использует имена переменных из маршрута для генерации документации.

  • использование person_name в качестве имени переменной противоречит нашим соглашениям об именах

  • Да, это немного глупо - но если есть простое исправление, о котором я не знаю, это было бы здорово.

...