C# 为什么我不能成为演员?
无法强制转换对象类型 “System.Collections.Generic.ListC# 为什么我不能成为演员?,c#,list,casting,ienumerable,C#,List,Casting,Ienumerable,无法强制转换对象类型 “System.Collections.Generic.List1[NorthwindMVC3.Models.Product]”到 类型 “System.Collections.Generic.IEnumerator1[NorthwindMVC3.Models.Product]”\ public IEnumerator GetEnumerator() { IEnumerable myEnumerable=Products.ToList(); 返回(IEnumera
1[NorthwindMVC3.Models.Product]”到
类型
“System.Collections.Generic.IEnumerator
1[NorthwindMVC3.Models.Product]”\
public IEnumerator GetEnumerator()
{
IEnumerable myEnumerable=Products.ToList();
返回(IEnumerator)myEnumerable;
}
公共类产品列表:IEnumerable
{
公共产品列表()
{
产品=新列表();
}
公共列表产品{get;private set;}
为什么我不能?试试
myEnumerable.GetEnumerator()
更好的是:
返回产品.GetEnumerator();
尝试myEnumerable.GetEnumerator()
更好的是:
return Products.GetEnumerator();
列表(可枚举)和枚举器(枚举可枚举集合)之间存在差异。列表(可枚举)和枚举器(枚举可枚举集合)之间存在差异。
public IEnumerator<Product> GetEnumerator()
{
IEnumerable<Product> myEnumerable = Products.ToList();
return (IEnumerator<Product>) myEnumerable;
}
public class ProductsList : IEnumerable<Product>
{
public ProductsList()
{
Products =new List<Product>();
}
public List<Product> Products { get; private set; }