3

Can someone please provide code to fix this error?

"Cannot apply indexing with [] to an expression of type 'ICollection'

Essentially, I'm trying to save/bind a value from a collection of objects.

@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; }
}
Mariah
  • 727
  • 5
  • 12
  • 25

2 Answers2

9

ICollections are not ordered, so that cannot be indexed.

Instead, you should use a separate ViewModel class with IList<T> property.

SLaks
  • 868,454
  • 176
  • 1,908
  • 1,964
0

Use IList

public  class A
{
   public int Name { get; set; }
   public virtual IList<B> Bs { get; set; }
}
user1726190
  • 51
  • 1
  • 3