无法将带有[]的索引应用于ICollection类型的表达式

时间:2011-10-23 23:42:12

标签: asp.net-mvc-3 entity-framework-4.1

有人可以提供代码来解决此错误吗?

“无法将带有[]的索引应用于”ICollection“类型的表达式

基本上,我正在尝试从一组对象中保存/绑定一个值。

@model MVC3.Models.Parent

@Html.EditorFor(model => model.Bs[0].Val) 

public  class A
{
    public int Name { get; set; }
    public virtual ICollection<B> Bs { get; set; }
}

public  class B
{
    public int Val { get; set; }
    public virtual A A { get; set; }
}

2 个答案:

答案 0 :(得分:7)

ICollection未订购,因此无法编入索引。

相反,您应该使用具有IList<T>属性的单独ViewModel类。

答案 1 :(得分:0)

使用IList

public  class A
{
   public int Name { get; set; }
   public virtual IList<B> Bs { get; set; }
}