Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Queryable.Cast<TResult>-Methode: (IQueryable)

 

Veröffentlicht: Oktober 2016

Konvertiert die Elemente einer IQueryable in den angegebenen Typ.

Namespace:   System.Linq
Assembly:  System.Core (in System.Core.dll)

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

Parameter

source
Type: System.Linq.IQueryable

Die IQueryable die die zu konvertierenden Elemente enthält.

Rückgabewert

Type: System.Linq.IQueryable<TResult>

Ein IQueryable<T> enthält jedes Element der Quellsequenz in den angegebenen Typ konvertiert.

Typparameter

TResult

Der Typ, in den die Elemente von source konvertiert werden sollen.

Exception Condition
ArgumentNullException

source ist null.

InvalidCastException

Ein Element in der Sequenz kann nicht umgewandelt werden, um den Typ TResult.

Die Cast<TResult>(IQueryable) -Methode generiert eine MethodCallExpression Aufruf darstellt Cast<TResult>(IQueryable) sich selbst als konstruierte generische Methode. Anschließend übergibt der MethodCallExpression zu der CreateQuery(Expression) Methode der IQueryProvider durch dargestellt die Provider Eigenschaft der source Parameter.

Das Abfrageverhalten durch das Ausführen einer Ausdrucksbaumstruktur, die aufrufende darstellt, Cast<TResult>(IQueryable) hängt von der Implementierung des Typs der source Parameter. Das erwartete Verhalten ist, die Werte in konvertiert source Eingabe TResult.

Im folgenden Codebeispiel wird veranschaulicht, wie Sie Cast<TResult>(IQueryable) So konvertieren Sie Objekte in einer Sequenz in den Typ String.


// Create a list of objects.
List<object> words =
    new List<object> { "green", "blue", "violet" };

// Cast the objects in the list to type 'string'
// and project the first letter of each string.
IEnumerable<string> query =
    words.AsQueryable()
    .Cast<string>()
    .Select(str => str.Substring(0, 1));

foreach (string s in query)
    Console.WriteLine(s);

/*  This code produces the following output:

    g
    b
    v
*/

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 3.5
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.1
Windows Phone
Verfügbar seit 8.1
Zurück zum Anfang
Anzeigen: