как передать значение контроллеру - PullRequest
2 голосов
/ 26 августа 2010

У меня есть выпадающий список, в котором я хочу передать выбранное значение, которое я выбрал, в контроллер.Как мне это сделать?

Ответы [ 2 ]

2 голосов
/ 26 августа 2010

Контроллер:

public class TestController : Controller
{
    public ActionResult Test(Test input)
    {
        string selected = input.YourDropDown; //Here is your value

        return View();
    }

}

Модель:

public class Test
{
    public string YourDropDown { get; set; }
}

Представление:

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<###NAMESPACE###.Models.Test>" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Test</title>
</head>
<body>
    <div>
        <% using (Html.BeginForm()) { %>
            <%= Html.DropDownListFor(model => model.YourDropDown, new[] { new SelectListItem { Text = "Test", Value = "Value" }}) %>
            <input type="submit" />
        <% } %>
    </div>
</body>
</html>

Поместите представление в папку как: /Views/Test/Test.aspx

и ваш URL будет:

url/Test/Test

Это был бы один из лучших и наиболее расширяемых способов сделать то, что вы есть.Вы можете избежать создания класса модели и использовать Html.DropDownList вместо Html.DropDownListFor.

1 голос
/ 26 августа 2010

Вы можете передать через строку запроса, например, так:

http://YourMvcApp/YourController/YourAction/?yourvariable=yourvalue

Затем внутри вашего действия вы можете получить значение, выполнив

Dim myValue As Object = Request("yourvariable")

Или вC #

Object myValue = Request["yourvariable"];

HTH,

Майк

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...