Dela via


RuntimeIdentifier returnerar plattform som körningen skapades för

RuntimeInformation.RuntimeIdentifier returnerar den plattform som körningen skapades för i stället för ett värde som beräknades vid körning.

Tidigare beteende

Värdet var en körningsidentifierare (RID) som beräknades via OS-filer eller API:er. Detta innebar i allmänhet att det var en versionsspecifik och distributionsspecifik RID. När du till exempel kör ett program på Windows 11 var win10-x64 eller, på Ubuntu 20.04, kan det vara ubuntu.20.04-x64.

Nytt beteende

Från och med .NET 8 är värdet RID som körningen skapades för. Det innebär att för portabla versioner av körningen (alla Microsoft-tillhandahållna versioner) är värdet icke-versionsspecifikt och icke-distributionsspecifikt. Värdet på Windows 11 är win-x64till exempel , och på Ubuntu 20.04 är linux-x64det . För icke-bärbara versioner (source-build) anger bygget ett rid-bygge som kan ha en version och distribution, och det värdet är rid som returneras.

Version introducerad

.NET 8 RC 1

Typ av icke-bakåtkompatibel ändring

Den här ändringen är en beteendeförändring.

Orsak till ändringen

Den här ändringen är i linje med en .NET 8-ändring av RID-specifik tillgångsmatchning och övergången från en distributionsmedveten körning. RuntimeInformation.RuntimeIdentifier är ett täckande värde som ska representera den plattform där värden eller körningen anser sig vara igång. I .NET 8 motsvarar det den plattform för vilken värden eller körningen skapas, i stället för en RID som beräknas vid körning.

RuntimeInformation.RuntimeIdentifier är ett täckande värde som inte är avsett att parsas i dess komponentdelar. För operativsystemversionen av den faktiska datorn som ett program körs på använder du Environment.OSVersion. För en beskrivning använder du RuntimeInformation.OSDescription. För ett specifikt ID (distribution) och motsvarande version på Linux kan du läsa os-versionsfilen .

Berörda API:er

Se även