如何使我的Linq to Sql类IEnumerable或C#3.0中的IEnumerable对象
答案 0 :(得分:2)
要在C#中创建一个Enumerable对象,您将实现IEnumerable接口
public class Widget{}
public class WidgetCollection : IEnumerable<Widget>
{
public IEnumerator<Widget> GetEnumerator()
{
throw new NotImplementedException();
}
System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
{
return this.GetEnumerator();
}
}
关于你问题的第二部分,我不确定你在询问或试图做什么。
答案 1 :(得分:0)
我不确定你的意思是“让我的Linq to SQL class IEnumerable”。但是,在您的控制器中(假设ASP.NET MVC)...
WidgetDataContext dataContext = new WidgetDataContext();
var data = dataContext.Widgets.OrderBy(x => x.name);
return View(data);
在这种情况下,视图将能够简单地将data
对象(在视图中称为Model
)转换为IEnumerable<Widget>
并且可以预先通过它。
这个问题(以及Josh的回答)是这个问题吗?
答案 2 :(得分:0)
如果您正在讨论LinqToSql生成的类,那么您可以在分部类
中进行public partial class YourLinqToSqlClass : IEnumerable
{
System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
{
//Implement...
}
}