Вы должны добавить собственный маршрут в global.ascx.cs, который будет использоваться для перенаправления на хороший контроллер. Но я предполагаю, что «Джон» не является уникальным значением, поэтому вам придется сохранить идентификатор в URL-адресе, или, если Джон является именем пользователя и уникален, вы можете использовать этот URL:
routes.MapRoute("Member", "Profile/{member}", new { controller = "Member", action = "Profile"});
Тогда в вашем контроллере у вас будет:
public ActionResult Profile(string username){
//fetch from the db
}
Если «Джон» не является уникальным значением, я предлагаю вам использовать:
routes.MapRoute("Member", "Profile/{id}/{member}", new { controller = "Member", action = "Profile"});
Таким образом, ваш URL будет выглядеть как http://website.com/Profile/John/34, а ваш контроллер:
public ActionResult Profile(int id){
//fetch from the db
}
Дайте мне знать, если вам нужна дополнительная помощь!