[英]How to add item to IList<T>
我有一個IList。
IList<MyClass> MyList
{
get;
set;
}
我在頁面加載中將Myclass列表復制到此
MyList=Listofmyclass;
我想在MyList中添加一個新項目
MyList.Add(NewItem);
但是當我使用這個代碼時,我得到錯誤“ 收集是固定大小的。 ”
如何向IList添加新項?
我假設MyList
是MyClass[]
。 數組具有固定大小,您無法向其中添加項目。 相反,如果可能的話,我會分配一個List<MyClass>
來支持它。
可能你有一個固定大小的Listofmyclass實現,換句話說:
IsFixedSize == true
這可以防止添加/刪除列表元素。
IList實現分為三類:只讀,固定大小和可變大小。 無法修改只讀IList。 固定大小的IList不允許添加或刪除元素,但它允許修改現有元素。 可變大小的IList允許添加,刪除和修改元素。
看到這里
如果集合的實際類型支持添加,則只能向IList
添加項目。 在你的情況下,它沒有。 例如,如果您使用數組,則不支持添加。
您可以使用ToList
方法將集合轉換為列表,該列表支持添加:
MyList = Listofmyclass.ToList();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.