我有一个像下面的ViewModel,
public class EnrollPlanPriceLevelViewModel { public EnrollPlanPriceLevel EnrollPlanPriceLevels { get; set; } public DictionaryPrices { get; set; } }
我的视图中的代码,但我无法创建查看价格.请帮帮我一个人!
@{ int i = 0; foreach (FCA.Model.PriceLevel p in ViewBag.PriceLevelID) { i = i + 1;@Html.TextBoxFor(model => model.Prices[p], new { @placeholder = "Price" })} }
我想在Controller中调用Dictionary对象值如何?
public class EnrollPlanPriceLevelViewModel { public EnrollPlanPriceLevel EnrollPlanPriceLevels { get; set; } public Dictionary<string,decimal> Prices { get; set; } }
我的Controller的Get方法应该像这样初始化'Key'和Values.这样您就可以在View中遍历每个KeyValue对.
public ActionResult Create() { var model = new EnrollPlanPriceLevelViewModel(); model.Prices = new Dictionary<string, decimal>(); foreach (PriceLevel p in db.PriceLevelRepository.GetAll().ToList()) { model.Prices.Add(p.PriceLevelID.ToString(), 0); } return View(model); }
<div class="span12"> @{ foreach (var kvpair in Model.Prices) { <div class="span4"> @Html.TextBoxFor(model => model.Prices[kvpair.Key], new { @placeholder = "Price" }) @Html.ValidationMessageFor(model => model.Prices[kvpair.Key]) </div> } } </div>