Condividi tramite


Funzione Seq.cast<'T> (F#)

Esegue il wrapping di una sequenza System.Collections con tipizzazione debole come sequenza tipizzata.

Percorso spazio dei nomi/modulo: Microsoft.FSharp.Collections.Seq

Assembly: FSharp.Core (in FSharp.Core.dll)

// Signature:
Seq.cast : IEnumerable -> seq<'T>

// Usage:
Seq.cast source

Parametri

Eccezioni

Eccezione

Condizione

ArgumentNullException

Generata quando la sequenza di input è Null.

Valore restituito

Sequenza risultante.

Note

Per utilizzare questa funzione è necessaria in genere un'annotazione di tipo. Un'annotazione di tipo errata può determinare errori di tipo in fase di esecuzione. L'accesso ai singoli valori IEnumerator<T> generati dalla sequenza restituita non deve essere eseguito contemporaneamente.

Questa funzione è denominata Cast negli assembly compilati. Utilizzare questo nome se si accede alla funzione da un linguaggio diverso da F# o tramite reflection.

Esempio

Nel codice riportato di seguito viene illustrato l'utilizzo di ArrayList per convertire un Seq.cast con tipizzazione debole, in cui il tipo di elemento è solo Object, in una sequenza di int.

open System
let mutable arrayList1 = new System.Collections.ArrayList(10)
for i in 1 .. 10 do arrayList1.Add(10) |> ignore
let seqCast : seq<int> = Seq.cast arrayList1

Piattaforme

Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2.

Informazioni sulla versione

F# Runtime

Supportato in: 2.0, 4.0

Silverlight

Supportato in: 3

Vedere anche

Riferimenti

Modulo Collections.Seq (F#)

Spazio dei nomi Microsoft.FSharp.Collections (F#)