È possibile eseguire il cast di un elenco IEnumerable in una raccolta BindingList?Perché non posso trasmettere un elenco IEnumerable <T> a BindingList <t>?
La lista IEnumerable è un elenco di oggetti tipizzati ad esempio:
IEnumerable<AccountInfo> accounts = bll.GetAccounts(u.UserName, u.Password);
E il mio PagingList solo estende BindingList:
public class PagingList<T>
{
public BindingList<T> Collection { get; set; }
public int Count { get; set; }
public PagingList()
{
Collection = new BindingList<T>();
Count = 0;
}
}
Volevo solo passare la mia lista IEnumerable a un metodo che rende fuori l'elenco con il mio PagingControl:
protected void RenderListingsRows(PagingList<AccountInfo> list)
{
foreach (var item in list)
{
//render stuff
}
}
Ma sembra che non possa essere lanciato tra due, qualcuno può far notare cosa mi manca ?!
Molte grazie
Ben
Ricorda, un cast è spesso solo un _check_ per vedere se l'oggetto a cui ti stai riferendo è realmente il tipo che stai dicendo che è. In questo caso non è un tentativo di trasformare in qualche modo un oggetto diverso in una forma che non ha già. Se questo non è chiaro, questo articolo potrebbe aiutare: http://blogs.msdn.com/ericlippert/archive/2009/03/19/representation-and-identity.aspx –