Dela via


RuntimeIdentifier returnerar den plattform som körtiden byggdes för.

RuntimeInformation.RuntimeIdentifier returnerar den plattform för vilken körtiden skapades, i stället för ett värde som beräknas 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 den RID som .NET-ramverket byggdes 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 byggen (source-build) anger bygget ett RID som kan inkludera en version och distribution, och det värdet är RID som returneras.

Version lanserad

.NET 8 RC 1

Typ av brytande ändring

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

Orsak till ändring

Den här ändringen är i linje med en .NET 8-ändring av RID-specifik resurslösning och övergången från en distributionsmedveten körmiljö. RuntimeInformation.RuntimeIdentifier är ett dolt värde som ska representera den plattform där värdsystemet eller körningen anser sig vara igång. I .NET 8 motsvarar detta den plattform för vilken värdprocessen eller körmiljön byggs, i stället för en RID som beräknas under körning.

RuntimeInformation.RuntimeIdentifier är ett ogenomskinligt 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