IHierarchicalEnumerable 接口

定义

表示可以使用接口枚举的 IEnumerator 分层集合。 实现接口的 IHierarchicalEnumerable 集合由 ASP.NET 网站导航和数据源控件使用。

public interface class IHierarchicalEnumerable : System::Collections::IEnumerable
public interface IHierarchicalEnumerable : System.Collections.IEnumerable
type IHierarchicalEnumerable = interface
    interface IEnumerable
Public Interface IHierarchicalEnumerable
Implements IEnumerable
派生
实现

示例

下面的代码示例演示如何使用扩展IHierarchicalEnumerable和提供包装ArrayList对象的对象的集合IHierarchyData的类实现FileSystemInfo接口。 调用IHierarchicalEnumerable方法时HierarchicalDataSourceView,派生自Select的类使用该集合来返回分层节点的集合。 该代码示例是 HierarchicalDataSourceControl 类中的一个较大示例的一部分。

// A collection of FileSystemHierarchyData objects
public class FileSystemHierarchicalEnumerable :
    ArrayList, IHierarchicalEnumerable
{
    public FileSystemHierarchicalEnumerable()
        : base()
    {
    }

    public IHierarchyData GetHierarchyData(object enumeratedItem)
    {
        return enumeratedItem as IHierarchyData;
    }
}

Public Class FileSystemHierarchicalEnumerable
    Inherits ArrayList
    Implements IHierarchicalEnumerable

    Public Sub New()
    End Sub


    Public Overridable Function GetHierarchyData( _
        ByVal enumeratedItem As Object) As IHierarchyData _
        Implements IHierarchicalEnumerable.GetHierarchyData

        Return CType(enumeratedItem, IHierarchyData)
    End Function

End Class

注解

IHierarchicalEnumerable 接口扩展 IEnumerable 接口并公开 GetHierarchyData,这是一种用于从枚举项中检索 IHierarchyData 对象的方法,除了 GetEnumerator 该方法。

通常,使用IHierarchicalEnumerable集合的客户端通过调用IEnumerator该方法检索对象GetEnumerator,然后循环访问枚举并调用GetHierarchyData每个枚举项以检索对象IHierarchyData

方法

名称 说明
GetEnumerator()

返回循环访问集合的枚举器。

(继承自 IEnumerable)
GetHierarchyData(Object)

返回指定枚举项的分层数据项。

扩展方法

名称 说明
AsParallel(IEnumerable)

启用查询的并行化。

AsQueryable(IEnumerable)

IEnumerable 转换为 IQueryable

Cast<TResult>(IEnumerable)

IEnumerable 的元素强制转换为指定类型。

OfType<TResult>(IEnumerable)

根据指定类型筛选 IEnumerable 的元素。

适用于

另请参阅