RuntimeIdentifier restituisce la piattaforma per cui è stato compilato il runtime

RuntimeInformation.RuntimeIdentifier restituisce la piattaforma per la quale è stato compilato il runtime, anziché un valore calcolato in fase di esecuzione.

Comportamento precedente

Il valore è un identificatore di runtime (RID) calcolato tramite file del sistema operativo o API. Questo significava in genere un RID specifico della versione e della distribuzione. Ad esempio, quando si esegue un'applicazione in Windows 11, il valore è stato win10-x64 o, in Ubuntu 20.04, potrebbe essere ubuntu.20.04-x64.

Nuovo comportamento

A partire da .NET 8, il valore è il RID per cui è stato compilato il runtime. Ciò significa che per le build portabili del runtime (tutte le build fornite da Microsoft), il valore non è specifico per la versione e non specifico per la distribuzione. Ad esempio, il valore in Windows 11 è win-x64 e in Ubuntu 20.04 è linux-x64. Per le build non portabili (build di origine), la build imposta un RID build che può avere una versione e una distribuzione e tale valore è il RID restituito.

Versione introdotta

.NET 8 RC 1

Tipo di modifica che causa un'interruzione

Questa è una modifica funzionale.

Motivo della modifica

Questa modifica è in linea con una modifica di .NET 8 per la risoluzione degli asset specifica del RID e lo spostamento da un runtime compatibile con la distribuzione. RuntimeInformation.RuntimeIdentifier è un valore opaco che deve rappresentare la piattaforma in cui l'host o il runtime considera di essere in esecuzione. In .NET 8, che corrisponde alla piattaforma per la quale viene compilato l'host o il runtime, anziché un RID calcolato in fase di esecuzione.

RuntimeInformation.RuntimeIdentifier è un valore opaco e non deve essere analizzato nelle parti del componente. Per la versione del sistema operativo del computer effettivo in cui è in esecuzione un'applicazione, usare Environment.OSVersion. Per una descrizione, usare RuntimeInformation.OSDescription. Per un ID specifico (distribuzione) e la versione corrispondente in Linux, è possibile leggere il file versione del sistema operativo.

API interessate

Vedi anche