Я хочу, чтобы настроить следующий URL в моем веб-сайте MVC4, используя полное имя пользователя в URL:MVC пользователя в URL-адресе, как обрабатывать дубликаты
http://www.myapp.com/profile/steve-jones
Я установки следующий маршрут в Global .asax:
routeCollection.MapRoute(
"profile", "profile/{userName}",
new { controller = "myController", action = "profile", userName = string.Empty
});
и я могу взять параметр 'steve-jones'
и сопоставить его пользователю с именем соответствия. Моя единственная проблема, хотя, что, если есть более одного 'Steve Jones'
, как я могу справиться с этим?
Кто-нибудь знает об обходном пути/решении для этого, чтобы я мог использовать полное имя пользователя как часть URL-адреса и все еще иметь возможность получить правильный пользователь в методе контроллера?
Я вынужден включить идентификатор пользователя с URL-адресом (что-то, что я не хочу появляться)?
спасибо Брайан, очень полезно. Единственная проблема заключается в том, что нет имен пользователей только с именами и фамилиями, и у меня нет доступа к db, поскольку он обрабатывается CRM – DevDave
. Я вижу, тогда вам придется делать это на лету. Возможно, если бы у вас была дата создания учетной записи, вы могли бы сортировать ее и назначать номера таким образом, поэтому первый steve всегда был бы steve1 и т. Д. Таким образом, вы могли бы иметь эффективную мета-переменную, которой вам не нужно изменять базу данных для. – BrianHall
хорошая идея, может попытаться подойти так, спасибо – DevDave