2015-08-04 4 views
2

Было найдено несколько типов контроллеров, соответствующих URL. Это может произойти, если маршруты атрибутов на нескольких контроллерах соответствуют запрошенному URL.MVC Маршрутизация неоднозначных действий

public class my1Controller: Controller 
[Route("path/{param1}", Name = "test1")] 
public ActionResult myaction1(string param1) 

public class my2Controller: Controller 
[Route("path/{param2}", Name = "test2")] 
public ActionResult myaction2(string param2) 

Есть ли вообще обойти это? Для исторического SEO мне нужно иметь два одинаковых URL-адреса, которые имеют разные параметры одной строки.

ответ

2

Ваши URL-адреса идентичны, нет возможности различать их, и оба контроллера/действия соответствуют. Это связано с тем, что имя параметра не имеет значения при выборе между двумя маршрутами.

Вы можете использовать встроенные ограничения, применяемые к param1 и param2, чтобы помочь маршрутизации выбрать один из них. Или убедитесь, что «путь» отличается от

Смежные вопросы