я все,ASP.NET MVC маршруты: Конфликтующие имена действий с пользовательским маршрутом
В previous question, я спросил, как определить пользовательский маршрут для обработки следующего URL:
http://www.example.com/User/Profile/Edit/{userProfileID}
У меня есть Пользовательский объект и объект UserProfile, но только UserController, который я хочу использовать для действий над обоими объектами. У меня уже есть метод в UserController с именем Edit, который обрабатывает изменения для пользователя. Но мне также нужен метод для редактирования в UserProfile. Ответ на мой вопрос маршрутизации был следующий маршрут:
routes.MapRoute(
"ProfileleRoute", // Route name
"User/Profile/{action}/{userProfileID}", // URL with parameters
new { controller = "User", action = "Index" } // Parameter defaults
);
Но учитывая, что пользовательский маршрут, где я должен объявить действие редактирования для UserProfile, и что она должна называться? Похоже, я не мог написать другой метод в UserController под названием Edit, потому что у меня уже есть тот, который обрабатывает редактирование пользователя.
Таким образом, я чувствую, что мне понадобится два действия «Изменить», чтобы обрабатывать следующие маршруты: «Пользователь/Редактировать» и «Пользователь/Профиль/Изменить». Как мне обойти это?
Большое спасибо.
Вы говорите, что вам нужно различать User/Edit и User/Profile/Edit? – dotariel
Да, именно то, что я говорю. Отредактированный вопрос должен быть более ясным. –
Зачем вам обойти это? Разве это не является репрезентативным для вас? Или они одинаковы? – dotariel