Partager via


RuntimeIdentifier retourne la plateforme pour laquelle le runtime a été généré

RuntimeInformation.RuntimeIdentifier retourne la plateforme pour laquelle le runtime a été généré, plutôt qu’une valeur calculée au moment de l’exécution.

Comportement précédent

La valeur était un identificateur d’exécution (RID) calculé par le biais de fichiers ou d’API du système d’exploitation. Cela signifie généralement qu’il s’agissait d’un RID spécifique à la version et à la distribution. Par exemple, lors de l’exécution d’une application sur Windows 11, la valeur était win10-x64 ou, sur Ubuntu 20.04, elle pourrait être ubuntu.20.04-x64.

Nouveau comportement

À compter de .NET 8, la valeur est le RID pour lequel le runtime a été généré. Cela signifie que pour les builds portables du runtime (toutes les builds fournies par Microsoft), la valeur n’est pas spécifique à la version et non spécifique à la distribution. Par exemple, la valeur sur Windows 11 est win-x64, et sur Ubuntu 20.04, c’est linux-x64. Pour les compilations non portables (source-build), la compilation définit un RID de build qui peut inclure une version et une distribution, et cette valeur est le RID qui est retournée.

Version introduite

.NET 8 RC 1

Type de changement cassant

Ce changement est un changement de comportement.

Raison de la modification

Cette modification est conforme à un changement de .NET 8 concernant la résolution des ressources spécifiques au RID et l’abandon d’un runtime conscient des distributions. RuntimeInformation.RuntimeIdentifier est une valeur opaque qui doit représenter la plateforme sur laquelle l’hôte ou le runtime se considère comme étant en cours d’exécution. Dans .NET 8, qui correspond à la plateforme pour laquelle l’hôte ou le runtime est généré, plutôt qu’un RID calculé au moment de l’exécution.

RuntimeInformation.RuntimeIdentifier est une valeur opaque et n’est pas destinée à être analysée dans ses composants. Pour la version du système d’exploitation de l’ordinateur réel sur lequel une application s’exécute, utilisez Environment.OSVersion. Pour obtenir une description, utilisez RuntimeInformation.OSDescription. Pour un ID spécifique (distribution) et une version correspondante sur Linux, vous pouvez lire le fichier de mise en production du système d’exploitation .

API affectées

Voir aussi