2013-08-30 4 views
0
@using (Html.BeginForm("testingMethod","test",FormMethod.Get)) { 
@Html.AntiForgeryToken() 

@foreach (var item in Model) { 
    @Html.DropDownList("dropDown_"+item.ConfigCode+"_ListName", (IEnumerable<SelectListItem>)ViewData["dropDown_"+item.ConfigCode]) 
} 
        . 
        . 
        . 
        . 
} 
<input type="submit" value="Save" /> 

Base на приведенном выше коде, я успешно вызвать метод "testingMethod", что в "testController", который возвращает мне URL:MVC Получить данные View контролеру

http://localhost:59512/test/testing?__RequestVerificationToken=xxxxxxx&dropDown_KKK=3 

В моей ActionResult «testingMethod », Мне нужно получить это значение dropDown_KKK, которое равно 3. Могу ли я узнать, что мне делать в моем методе? Я попытался отредактируйте testingMethod, как показано ниже:

public ActionResult testing(FormCollection collection){ 
    Debug.WriteLine(" ======= " + collection.GET("dropDown_KKK")); 

} 

базы на другую должность, он должен работать, но ошибки возникают при collection.GET, который говорит System.Web.MvC.FormCollection не содержит определение GET и нет метод расширения «GET» принимать первый аргумент блаблабла ...

ответ

0

Вы можете использовать:

collection["name"] 

где name должно быть имя вашего списка.

+0

Нет ничего внутри, но, как я уже сказал, из URL-адреса я вижу «3» в качестве значения, есть ли другой способ получить доступ к значению из URL-адреса? –

+1

Вы можете использовать 'Request.QueryString [" dropDown_KKK "]' – Daniele

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