2013-12-19 2 views
1

У меня есть очень простой MVC приложение:MVC маршрутизации индекс страницы

Когда я типа:

http://locahost:8080 

следующий маршрут в routeconfig берет меня к главному контроллеру:

routes.MapRoute(
       name: "Default", 
       url: "{controller}/{action}/{id}", 
       defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
      ); 

Когда я набираю следующее, я получаю ошибку 404.

http://locahost:8080/JohnDoe 

Я хочу нанести на карту этот запрос в Home Controller's Get Action с функцией имени (см. Ниже). Как мне это сделать?

public Person Get(string name) 
    { 
     PersonRespository db = new PersonRespository(); 
     return db.GetPerson(name); 
    } 

Большое спасибо.

+0

Ваше имя действия - это индекс, но ваш метод называется Get. Вызовите свой метод Index. – Tim

ответ

2

Следующее должно работать.

routes.MapRoute(
    name: "Custom", 
    url: "{name}", 
    defaults: new 
    { 
     controller = "Home", 
     action = "Get" 
    }); 
+0

Это сработало. Большое спасибо @emre –

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