LanguageVersion Enumerazione

Definizione

Specifica la versione della lingua.

public enum class LanguageVersion
public enum LanguageVersion
type LanguageVersion = 
Public Enum LanguageVersion
Ereditarietà
LanguageVersion

Campi

CSharp1 1

Linguaggio C# versione 1

CSharp10 1000

Linguaggio C# versione 10.0

Caratteristiche:

  • Struct di record
  • Direttive using globali
  • Miglioramenti dell'espressione lambda
  • Assegnazione definita migliorata
  • Stringhe interpolate costanti
  • Combinare dichiarazioni e variabili nella decostruzione
  • Modelli di proprietà estesi
  • Sealed record ToString
  • API del generatore di origine v2
  • AsyncMethodBuilder a livello di metodo
CSharp11 1100

Linguaggio C# versione 11.0
Caratteristiche:

  • Valori letterali stringa non elaborati
  • Membri astratti statici nelle interfacce
  • Attributi generici
  • Nuove righe nelle interpolazioni
  • Modelli di elenco
  • Membri obbligatori
  • Modello costante span<char>
  • Struct auto-default
  • Nameof(parameter)
  • Operatori controllati definiti dall'utente
  • Valori letterali stringa UTF-8
  • Operatore di spostamento destro senza segno
  • Operatore di turno rilassato
  • Campi ref
  • Tipi locali di file
CSharp12 1200

Linguaggio C# versione 12.0
Caratteristiche:

  • Costruttori primari
  • Uso di alias per qualsiasi tipo
  • Nameof accesso ai membri dell'istanza
  • Matrici inline
  • Espressioni di raccolta
  • Parametri ref readonly
  • Parametri facoltativi lambda
CSharp2 2

Linguaggio C# versione 2

CSharp3 3

Linguaggio C# versione 3

Funzionalità: LINQ.

CSharp4 4

Linguaggio C# versione 4

Funzionalità: dinamica.

CSharp5 5

Linguaggio C# versione 5

Funzionalità: attributi di info del chiamante asincroni.

CSharp6 6

Linguaggio C# versione 6

Caratteristiche:

  • Uso di una classe statica
  • Filtri eccezioni
  • Await nei blocchi catch e finally
  • Inizializzatori di proprietà automatiche
  • Metodi e proprietà con corpo dell'espressione
  • Operatore di propagazione null ?.
  • Interpolazione di stringhe
  • Operatore nameof
  • Inizializzatore di dizionario
CSharp7 7

Linguaggio C# versione 7.0

Caratteristiche:

  • Variabili out
  • Corrispondenza dei modelli
  • Tuple
  • Decostruzione
  • Variabili discard
  • Funzioni locali
  • Separatori di cifre
  • Valori restituiti e variabili locali ref
  • Tipi restituiti asincroni generalizzati
  • Più membri con corpo di espressione
  • Espressioni throw
CSharp7_1 701

Linguaggio C# versione 7.1

Caratteristiche:

  • Async Main
  • Valore letterale predefinito
  • Nomi di elemento di tupla dedotti
  • Corrispondenza dei modelli con generics
CSharp7_2 702

Linguaggio C# versione 7.2

Caratteristiche:

  • Ref readonly
  • Struct ref e readonly
  • Estensioni ref
  • Operatore di riferimento condizionale
  • Private protected
  • Separatori di cifre dopo l'identificatore di base
  • Argomenti denominati non finali
CSharp7_3 703

Linguaggio C# versione 7.3

Caratteristiche:

  • L'indicizzazione di campi fissi non richiede l'aggiunta
  • le variabili locali ref possono essere riassegnate
  • le matrici stackalloc supportano inizializzatori
  • Altri tipi supportano l'istruzione fissa
  • Miglioramento dei vincoli generici
  • Supporto delle tuple == e !=
  • Associare gli attributi al campo sottostante per le proprietà implementate automaticamente
  • Miglioramenti della risoluzione dell'overload dei metodi quando gli argomenti differiscono da "in"
  • Estensione delle variabili di espressione negli inizializzatori
  • Miglioramento dei candidati per l'overload
  • Nuove opzioni del compilatore (-publicsign e -pathmap)
CSharp8 800

Linguaggio C# versione 8.0

Caratteristiche:

  • Membri di sola lettura
  • Metodi di interfaccia predefiniti
  • Miglioramenti della corrispondenza dei modelli (espressioni di cambio, modelli di proprietà, modelli di tupla e modelli posizionali)
  • Dichiarazioni using
  • Funzioni locali statiche
  • Struct ref Disposable
  • Tipi riferimento nullable
  • Flussi asincroni
  • Monouso asincrono
  • Indici e intervalli
  • Assegnazione null-coalescing
  • Tipi costruiti non gestiti
  • Stackalloc nelle espressioni nidificate
  • Miglioramento delle stringhe verbatim interpolate
CSharp9 900

Linguaggio C# versione 9.0

Caratteristiche:

  • Record
  • Setter di sola inizializzazione
  • Istruzioni di primo livello
  • Miglioramenti dei criteri di ricerca
  • Interi di dimensioni native
  • Puntatori funzione
  • Eliminare il flag localsinit
  • Espressioni new con tipo di destinazione
  • Funzioni anonime statiche
  • Espressioni condizionali con tipi di destinazione
  • Tipi restituiti covarianti
  • Supporto dell'estensione GetEnumerator per i cicli foreach
  • Parametri di rimozione lambda
  • Attributi per le funzioni locali
  • Inizializzatori di modulo
  • Nuove funzionalità per i metodi parziali
Default 0

Versione della lingua predefinita, ovvero la versione supportata più recente.

Latest 2147483647

La versione più recente supportata della lingua.

LatestMajor 2147483645

La versione principale più recente supportata.

Preview 2147483646

Anteprima della versione successiva della lingua.

Si applica a