【发布时间】:2012-05-13 19:54:04
【问题描述】:
ViewModel 如下所示:
public W { get; set; }
public WC WC { get; set; }
public List<TC> TCs { get; set; }
WC 有一组相关的 TC。它们的关系由包含外键WCId的TC映射。
在视图中,我有一个表单。在表单中,有 WC 的输入字段。然后,有一组 TC 取决于最大为 4 的计数。每个 TC 都有一个相关的 T,因为 TC 有一个外键TCId。我试图确保在发布表单时 TC 具有相关的TId。 TId 保存在 W 中的 T 列表中(即 @Model.W.T.ElementAt(someindex).TId)。
如何利用 lambda 表达式使用帮助程序在视图中生成这种关系,以便相关控制器在 httppost 操作中使用它?
这是我现在正在做的事情:
<input type="hidden" value="@(Model.W.T.ElementAt(i).TId)"
name="TCs[@(i)].TId"
id="TCs_@(i)__TId" data-val="true"/>
我想做的是使用@Html.HiddenFor 助手,但似乎无法让它工作,所以我只是使用了上面稍微动态但仍然硬编码的方法。注意:这可行,但是,我希望它更清洁。
【问题讨论】:
标签: asp.net-mvc-3 html.hiddenfor