IGrouping模型没有约束力

时间:2017-08-29 14:58:32

标签: c# asp.net-mvc .net-4.6

我有以下类作为我的viewmodel。由于要求,我必须使用IGrouping而不是普通的IList或IEnumerable。我必须根据类型对ExtraCostOption进行分组。

我附上了我的观点图片,可以解释这个要求。

我的问题是FirstCostOption根本没有填充,但填充了所有其他值。 谁能指点我的方向?       enter image description here

public class ExtraCostOption
{        
  public string Name { get; set; }
  public string Description { get; set; }
  public bool IsSelected { get; set; }
  public OptionCategory Category { get; set; }
  public string SourceId {get;set;}
}
public class Product
{
  public string Id {get;set;}
  public string Cost {get;set;}
  public List<IGrouping<string, ExtraCostOption>> FirstCostOption { get; set; }
}

我的剃刀代码是:

        <div class="sm card content">
        @if (Model.FirstCostOption .Any())
        {
            foreach (var optGroup in Model.FirstCostOption)
            {
                <h5>@optGroup.Key</h5>
                for (int i = 0; i < optGroup.ToList().Count; i++)
                {
                    <div class="card">
                        @Html.HiddenFor(m => optGroup.ToList()[i].SourceId)
                        <label class="control checkbox">
                            @Html.CheckBoxFor(m => optGroup.ToList()[i].IsSelected)
                            <span class="control-indicator"></span>
                            <span>
                                @optGroup.ToList()[i].Name
                            </span>
                        </label>
                    </div>  
                }
            }
        }
    </div>

我的控制器代码如下所示:

    [ValidateAntiForgeryToken]
    [System.Web.Mvc.HttpPost]
    public async Task<ActionResult> Process([FromBody]Product viewModel)

0 个答案:

没有答案