Как мне вернуть список или коллекцию в контроллер из представления в MVC 3?

Кто-нибудь, пожалуйста, помогите мне вернуть этот список правильно с моей точки зрения. Я не понимаю, почему я возвращаю null для своего fieldModelList. Я пытаюсь передать его контроллеру ...

Вот мое мнение:

@model List<Regions.SOA.UI.CopyBookSchemaCreator.Models.FieldModel>

<script type="text/javascript" src="~/Scripts/jquery-ui-1.8.11.min.js"></script>

@using (Html.BeginForm("GetResponse", "TestMethods", FormMethod.Post))
{

<table id="tblMethods">
    <tr>
        <th>
            Property Name
        </th>
        <th>
            Request
        </th>
    </tr>

    @foreach (FieldModel fieldModel in Model) 
    {
        <tr>
            <td>
                @Html.DisplayFor(m => fieldModel.PropertyName)
            </td>
            <td>
                @Html.TextBoxFor(m => fieldModel.PropertyValue)
            </td>
        </tr>
    }

</table>

<div>
    <input type="submit"/>       
</div>

и вот мой контроллер:

    [HttpPost]
    public ActionResult GetResponse(List<FieldModel> fieldModelList)
    {
        return GetResponse(fieldModelList);   
    }

Я нажимаю метод HttpPost но если я помещаю точку останова прямо внутри нее, я сразу же возвращаю null для fieldModelList, который, как я надеялся, будет списком значений, которые я ввел в тексбоксы в представлении модели FieldModel ...

Я думаю, что что-то не так с моей логикой по сравнению с моим синтаксисом или, может быть, с моим синтаксисом, но в основном я хочу вернуть обратно список типа FieldModel с каждым соответствующим PropertyName и PropertyValue в контроллер. Я заметил, что я не передаю какой-либо параметр id в моем операторе BeginForm в представлении. Мне здесь нужен?

На всякий случай вот мой модельный класс для FieldModel:

namespace Regions.SOA.UI.CopyBookSchemaCreator.Models
{
    public class FieldModel
    {
        [Display(Name = "Property")]
        public string PropertyName { get; set; }

    [Display(Name = "Value")]
        public string PropertyValue { get; set; }
    }
}
9
задан tereško 4 September 2013 в 06:50
поделиться