OfType(TResult) Método (IQueryable)
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

Queryable.OfType<TResult> (Método) (IQueryable)

 

Filtra los elementos de IQueryable en función de un tipo especificado.

Espacio de nombres:   System.Linq
Ensamblado:  System.Core (en System.Core.dll)

public static IQueryable<TResult> OfType<TResult>(
	this IQueryable source
)

Parámetros

source

IQueryable cuyos elementos se van a filtrar.

Valor devuelto

Type: System.Linq.IQueryable<TResult>

Colección que contiene los elementos de source que son de tipo TResult.

Parámetros de tipo

TResult

El tipo según el cual se van a filtrar los elementos de la secuencia.

Exception Condition
ArgumentNullException

source es null.

El método OfType genera un objeto MethodCallExpression que representa el propio método OfType que realiza la llamada como un método genérico construido.A continuación, pasa el objeto MethodCallExpression al método CreateQuery(Expression) de la interfaz IQueryProvider representada por la propiedad Provider del parámetro source.

El comportamiento de la consulta que se produce como resultado de ejecutar un árbol de expresión que representa el método OfType que realiza la llamada depende de la implementación del tipo del parámetro source.El comportamiento esperado es que filtre los elementos de source que no son de tipo TResult.

En el ejemplo de código siguiente se muestra cómo se utiliza OfType para filtrar los elementos que no son de tipo PropertyInfo en una lista de elementos de tipo MemberInfo.

// Create a list of MemberInfo objects.
List<System.Reflection.MemberInfo> members = typeof(String).GetMembers().ToList();

// Return only those items that can be cast to type PropertyInfo.
IQueryable<System.Reflection.PropertyInfo> propertiesOnly =
    members.AsQueryable().OfType<System.Reflection.PropertyInfo>();

Console.WriteLine("Members of type 'PropertyInfo' are:");
foreach (System.Reflection.PropertyInfo pi in propertiesOnly)
    Console.WriteLine(pi.Name);

/*
    This code produces the following output:

    Members of type 'PropertyInfo' are:
    Chars
    Length
*/

Universal Windows Platform
Disponible desde 4.5
.NET Framework
Disponible desde 3.5
Portable Class Library
Compatible con: portable .NET platforms
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.1
Windows Phone
Disponible desde 8.1
Volver al principio
Mostrar:
© 2016 Microsoft