【问题标题】:How do I make my Linq to Sql class IEnumerable如何使我的 Linq to Sql 类 IEnumerable
【发布时间】:2009-05-14 14:57:11
【问题描述】:

如何在 C# 3.0 中使我的 Linq to Sql 类 IEnumerable 或对象 IEnumerable

【问题讨论】:

  • 输入“:IEncumerable”,右键“实现接口”填空——认真的,细节很重要

标签: .net ienumerable


【解决方案1】:

要在 C# 中使对象可枚举,您需要实现 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();
    }

}

至于你问题的第二部分,我不确定你在问什么或试图做什么。

【讨论】:

    【解决方案2】:

    如果您谈论的是 LinqToSql 生成的类,那么您可以在部分类中进行

    public partial class YourLinqToSqlClass : IEnumerable
    {
        System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
        {
            //Implement...
        }
    
    }
    

    【讨论】:

      【解决方案3】:

      我不确定“使我的 Linq to SQL 类 IEnumerable”是什么意思。但是,在您的控制器中(假设为 ASP.NET MVC)...

      WidgetDataContext dataContext = new WidgetDataContext();
      
      var data = dataContext.Widgets.OrderBy(x => x.name);
      
      return View(data);
      

      在这种情况下,视图将能够简单地将data 对象(在视图中称为Model)转换为IEnumerable&lt;Widget&gt;,并且可以通过它进行遍历。

      这是(上面有乔希的回答)这个问题吗?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-14
        • 1970-01-01
        相关资源
        最近更新 更多