将数组数据返回到包含数组的viewmodel中

时间:2011-04-20 18:17:25

标签: asp.net-mvc

我正在使用MVC3并将adminEditViewModel视图模型传递给我的视图:

public class adminEditViewModel
{
    public Answer   Answer { get; set; }
    public string abc { get; set; }
}

Class Answer看起来像这样:

public class Answer
{
    public string[] ImageFile;
}

在视图中我使用了这个:

@Html.EditorFor(model => @Model.Answer.ImageFile[@index])

当它出现在页面上时,它看起来像这样:

            <div class="editor-field">
                <input class="text-box single-line" id="Answer_ImageFile_0_" name="Answer.ImageFile[0]" type="text" value="" />
            </div>

当它以上面的viewmodel作为参数返回到控制器时,我添加一些数据,设置调试点,单击提交,然后看到viewdata中的Answer类包含null,但是正确设置了其他东西,例如abc。

我的问题是,我是否可以通过正常方式从这样的数组中通过viewmodel返回数据?

希望得到一些好的建议

2 个答案:

答案 0 :(得分:1)

由于asp.net mvc主张使用约定而不是配置,因此生成的html必须采用某种标准格式才能与模型中的列表或值数组绑定。请看这question。答案包含绑定列表值steve senderson's post到控制器操作参数的链接。

答案 1 :(得分:1)

你的答案.ImageFile是一个领域; ASP.NET MVC仅绑定属性。

public class Answer
{
    public string[] ImageFile { get ;set; }
}