2012-01-10 3 views
3

В приложении, которое я пытаюсь сделать, у меня есть меню, на мой взгляд, как показано ниже:Как отправить данные через actionlink в asp.net?

<ul id="menu"> 
    <li>@Html.ActionLink("Create Project", "Display", "CreateDisplay")</li> 
    <li>@Html.ActionLink("Open", "About", "Home")</li> 
</ul> 

где CreateDisplay это имя контроллера и дисплея является способ, в этом контроллере, который будет вызывать другой вид ,

Но, я хочу, чтобы метод отображения принимал определенные параметры, такие как имя пользователя. В текущем виде я получил имя пользователя как @ViewData["UserName"]

Но я не могу передать эти значения с помощью ActionLink. Я попытался прохождение параметров как

<li>@Html.ActionLink("Create Project", "Display?UserName="[email protected]["UserName"], "CreateDisplay")</li> 

но получил исключение.

Пожалуйста, предложите несколько способов сделать это.

спасибо, что заранее.

ответ

2

Вам необходимо использовать перегрузку, которая принимает параметры для значений маршрута. See the overloaded method ActionLink() here.

@Html.ActionLink(
    "Click me!", 
    "Display", 
    "CreateDisplay", 
    new { UserName = "SetYourValHere" }, 
    null); 
Смежные вопросы