2
我试图避免在mvc视图内使用foreach,正如我在很多答案中所见,这是一个很好的做法。但我并不完全知道如何实现它。避免在mvc视图内使用mv单选按钮的编辑器模板foreach
我想用银行的名单,以张贴之一,创建一批单选按钮(它的ID,实际上)
身为视图模型:
public class CashbackOfferViewModel
{
...
public string DepositBank { get; set; }
public IEnumerable<CompanyBank> DepositBanks { get; set; }
}
我想要使用类似的东西:
@Html.EditorFor(m => m.DepositBanks)
并且会创建适当的单选按钮。但是,如果我使用模型创建编辑器模板
@model CompanyBank
@Html.RadioButtonFor(??????)
@Html.LabelFor(????)
如何将它绑定到模型中的DepositBank属性?
UPDATE:
我一直在努力使这项工作,但目前的局势
视图模型:
public class CashbackOfferViewModel
{
....
public string DepositBankCode { get; set; }
public IEnumerable<CompanyBank> DepositBanks { get; set; }
}
EditorTemplate;
@model CompanyBank
<tr>
<td>
@Html.RadioButtonFor(m => m.CompanyBankCode, Model.CompanyBankCode)
<span>@Html.LabelFor(m => m.CompanyBankName, Model.CompanyBankName)</span>
</td>
</tr>
但我发现了所有负载检查单选按钮,实际上产生的HTML是这个(改变ID为他们每个人)
<input checked="checked" id="DepositBanks_0__CompanyBankCode" name="DepositBanks[0].CompanyBankCode" type="radio" value="HBOS">
基本上,我想用这在视图中:
@Html.EditorFor(m => m.DepositBanks)
代替这种
@foreach (var depositBank in Model.DepositBanks)
{
@Html.RadioButtonFor(m => m.DepositBankCode , depositBank.CompanyBankCode)
}