2014-01-24 2 views
1

Я Войти и контроллер Регистрация ActionResultИзменить маршрут URL в ASP.NET MVC

public ActionResult Register() 
     { 
      return View(); 
     } 

Если я размещать какие-либо данные, зарегистрированные ActionResult URL кажется, как показано ниже,

WebSiteName/Login/Register 

Я хочу, чтобы изменить маршрут url как WebSiteName/Login/Reg = Id?

Так что я пробовал внизу, однако я не мог изменить URL-адрес маршрута.

routes.MapRoute(
     name: "something", 
     url: "Login/Reg=Id?", 
     defaults: new 
     { 
      controller = "Login", 
      action = "Register", 
      id = id = UrlParameter.Optional 
     } 
    ); 

Так как я могу изменить URL-адрес в asp.net mvc?

Любая помощь будет оценена по достоинству.

Спасибо.

+0

Почему вы хотите, чтобы ваш URL, чтобы выглядеть? –

ответ

6

Вы пытаетесь использовать неправильную форму параметра url. Варианты у вас есть следующие:

  1. Url параметр часть: WebSiteName/Логин/Reg/{идентификатор}

    Для этого вы можете использовать следующие CONFIG

    routes.MapRoute(
        name: "something", 
        url: "Login/Reg/{id}", 
        defaults: new 
        { 
         controller = "Login", 
         action = "Register", 
         id = UrlParameter.Optional 
        } 
    ); 
    
  2. параметр строки запроса: WebSiteName/Login/Reg? Id = {id}

    Здесь необязательно указывать параметр в конфигурации:

    routes.MapRoute(
        name: "something", 
        url: "Login/Reg", 
        defaults: new 
        { 
         controller = "Login", 
         action = "Register" 
        } 
    ); 
    

Конечно, в обоих случаях предполагается, ваше действие Register имеет идентификатор параметра.

+0

Это не работает, вы хотите увидеть мои все коды? – user3230063

+0

@ user3230063, определить «не работает» – Andrei

+0

Я написал ваш код до «Default» Controller Action и т. Д., Теперь он работал. Если я написал ваш код после «Default», он не работает, я не знаю почему. Спасибо за ваше Помогите. – user3230063

0

Здесь я удалить последние два проходящих параметр из URL

это мой URL ссылка ->http://localhost:12345/User?value=98998?id=2

, и я хочу, чтобы удалить значение и параметр ID из URL ссылки

Step -I

Измените свой Routeconfig.CS, как этот

routes.MapRoute(
    "User", 
    "User/{value}/{id}", 
    new { controller = "User", action = "Index", value= UrlParameter.Optional, id = UrlParameter.Optional } 
); 

Step-II

пользователя контроллера

public ActionResult Index(string value, int id) 
{ 
    // write Your logic here 
    return view(); 
} 

Шаг III

Создать представление индекса для UserController

@Html.ActionLink("LinkName", "Index", "User", new {value = "98998", id = "2"},null) 

Наконец мы получили результата: http://localhost:12345/User/98998/2

Аналогично можно удалить несколько параметров из URL

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