日期:2014-05-17 浏览次数:20474 次
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~