以下は、コントローラーでインスタンス化されたリストに追加された各項目のラベルとテキストボックスを正しくレンダリングします。
私が必要とするのは、ラベルがリテラルの「FavouriteThingID」ではなく「FavouriteThingID」(つまり、1,2,3,4,5) の値を表示することです。
何か案は?
ビューモデル
public class FavouriteThingViewModel
{
public int FavouriteThingID { get; set; }
public string FavouriteThingName { get; set; }
}
エディタ テンプレート
@model _5fave.Models.FavouriteThingViewModel
<div class="control-group">
@Html.LabelFor(m => m.FavouriteThingID, new { @class = "control-label" })
<div class="controls">
@Html.TextBoxFor(m => m.FavouriteThingName)
@Html.ValidationMessageFor(m => m.FavouriteThingName, null, new { @class = "help-inline" })
</div>
</div>
コントローラ
var favouriteThings = new List<FavouriteThingViewModel>();
favouriteThings.Add(new FavouriteThingViewModel { FavouriteThingID = 1, FavouriteThingName = "Raindrops on roses" });
favouriteThings.Add(new FavouriteThingViewModel { FavouriteThingID = 2, FavouriteThingName = "Whiskers on kittens" });
favouriteThings.Add(new FavouriteThingViewModel { FavouriteThingID = 3, FavouriteThingName = "Bright copper kettles" });
favouriteThings.Add(new FavouriteThingViewModel { FavouriteThingID = 4, FavouriteThingName = "Warm woolen mittens" });
favouriteThings.Add(new FavouriteThingViewModel { FavouriteThingID = 5, FavouriteThingName = "Brown paper packages" });
viewModel.FavouriteThings = favouriteThings;