日期:2014-05-17 浏览次数:20405 次
public class ShoppingCart:IEnumerable<Product> { public IEnumerable<Product> Products { get; set; } public IEnumerator<Product> GetEnumerator() { return Products.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } }
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { public class Product { } public class ShoppingCart : IEnumerable<Product> { public IEnumerable<Product> Products { get; set; } public IEnumerator<Product> GetEnumerator() { return Products.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } } class Program { static void Main(string[] args) { } } }
------解决方案--------------------
这没什么问题
不过
public static IEnumerable<Product> filter(IEnumerable<Product> prodParam, Func<Product, bool> selectorParam)
{
foreach (Product prod in prodParam)
{
if (selectorParam(prod))
{
yield return prod;
}
}
}
可以简化下
public static IEnumerable<Product> filter(IEnumerable<Product> prodParam, Func<Product, bool> selectorParam)
{
return prodParam.Where(x => selectorParam(x));
}
------解决方案--------------------
你的VS 和 MVC 是什么版本哦?
我这没什么问题~
VS2010 MVC3~