web-dev-qa-db-fra.com

Comment déterminer si .NET Core est installé

Je sais que pour les anciennes versions de .NET, vous pouvez déterminer si une version donnée est installée en suivant 

https://support.Microsoft.com/en-us/kb/318785  

Existe-t-il une méthode officielle permettant de déterminer si .NET Core est installé?

(Et je ne parle pas du SDK, je souhaite vérifier un serveur sans le SDK afin de déterminer si DotNetCore.1.0.0-WindowsHosting.exe est installé dessus)

Je vois 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NET Cross-Platform Runtime Environment\.NET Framework 4.6\Win\v1-rc1 

avec la version n ° 1.0.11123.0 sur mon ordinateur Windows 7, mais je ne vois pas le même contenu sur mon ordinateur Windows 10.

174
weloytty

Utiliser Powershell :

Temps d'exécution:

(dir (Get-Command dotnet).Path.Replace('dotnet.exe', 'shared\Microsoft.NETCore.App')).Name

SDK:

(dir (Get-Command dotnet).Path.Replace('dotnet.exe', 'sdk')).Name
102
Andriy Tolstoy

Excellente question, et la réponse n'est pas simple. Il n'y a pas de commande "montre-moi toutes les versions .net core", mais il y a de l'espoir.

MODIFIER:

Je ne sais pas quand il a été ajouté, mais la commande info inclut désormais cette information dans son résultat. Il imprimera les runtimes installés et les SDK, ainsi que d'autres informations:

dotnet --info

Si vous voulez seulement voir les SDK: dotnet --list-sdks

Si vous voulez seulement voir les runtimes installés: dotnet --list-runtimes

Je suis sous Windows, mais je suppose que cela fonctionnerait également sur Mac ou Linux avec une version actuelle.

Vous pouvez également vous référer à .NET Core Download Archive pour vous aider à déchiffrer les versions du SDK.


INFORMATIONS PLUS ANCIENNES: Tout ce qui est en dessous de ce point est une information ancienne, moins pertinente, mais qui peut toujours être utile.

Voir les Runtimes installés:

Ouvrez C:\Program Files\dotnet\shared\Microsoft.NETCore.App dans l'Explorateur Windows

Voir les SDK installés:

Ouvrez C:\Program Files\dotnet\sdk dans l'Explorateur Windows

(Source pour les emplacements: Le blog d'un développeur )


En outre, vous pouvez voir les versions latest Runtime et SDK installées en lançant ces commandes à l'invite de commande:

dotnetLa dernière version de Runtime est la première chose répertoriée.DISCLAIMER: Cela ne fonctionne plus, mais peut fonctionner pour les anciennes versions.

dotnet --versiondernière version du SDK _ DISCLAIMER: Apparemment, le résultat de cette opération peut être affecté par tout fichier de configuration global.json.


Sur macOS, vous pouvez vérifier la version .net core en utilisant la commande ci-dessous.

ls /usr/local/share/dotnet/shared/Microsoft.NETCore.App/

Sur Ubuntu ou Alpine:

ls /usr/share/dotnet/shared/Microsoft.NETCore.App/

Il listera le dossier avec le nom de la version installée.

201
Sean

La réponse correcte pour les environnements d'exécution uniquement sans SDK, comme un serveur sur lequel le package d'hébergement Windows est installé, consiste à exécuter PowerShell à l'aide de la commande suivante:

dotnet --info

Par le documentation officielle :

  • L'option --version "Imprime la version du Kit de développement .NET Core SDK utilisée." et donc ne fonctionne pas si le SDK n'est pas installé. Tandis que...
  • L'option --info "Imprime des informations détaillées sur les outils de la CLI et l'environnement, tels que le système d'exploitation actuel, valide la version SHA et d'autres".

Voici un autre article officiel expliquant comment la gestion des versions .NET Core fonctionne. :)

111
Chiramisu

Vous pouvez vérifier si dotnet.exe est disponible:

where dotnet

Vous pouvez ensuite vérifier la version:

dotnet --version

68
Robert Paulsen

L'une des méthodes factices permettant de déterminer si .NET Core est installé sur Windows est la suivante:

  • Presse Windows + R
  • Tapez cmdname__
  • Sur l'invite de commande, tapez dotnet --version

dotnet --version

Si le .NET Core est installé, nous ne devrions pas avoir d'erreur dans les étapes ci-dessus.

46
student

(1) Si vous êtes sur le système Windows.

Ouvrez l'invite de commande.

 dotnet --version

(2) Exécutez la commande ci-dessous Si vous êtes sur un système Linux.

dotnet --version

dotnet --info
15
Hiren Parghi

Je travaille principalement avec des machines et des serveurs de développement Windows. 

Je voulais juste signaler (du moins pour NET.Core 2.0 et supérieur) que la seule chose à faire est d'exécuter dotnet --info dans une invite de commande pour obtenir des informations sur la version latest installée. Si .NET Core est installé, vous obtiendrez une réponse.

Sur ma machine de développement (Windows 10), le résultat est le suivant. SDK est 2.1.2 et le runtime est 2.0.3.

.NET Command Line Tools (2.1.2)

Product Information:
 Version:            2.1.2
 Commit SHA-1 hash:  5695315371

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.15063
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\2.1.2\

Microsoft .NET Core Shared Framework Host

  Version  : 2.0.3
  Build    : a9190d4a75f4a982ae4b4fa8d1a24526566c69df

Sur l'un de mes serveurs exécutant Windows Server 2016 avec le pack d'hébergement Windows Server (sans SDK), le résultat est le suivant. Pas de SDK, le runtime est 2.0.3.

Microsoft .NET Core Shared Framework Host

Version  : 2.0.3
Build    : a9190d4a75f4a982ae4b4fa8d1a24526566c69df

À votre santé !

12
Hakan Çelik MK1

Les commandes suivantes sont disponibles avec .NET Core SDK 2.1 (v2.1.300) :

Pour répertorier tous les SDK .NET Core installés, utilisez: dotnet --list-sdks

Pour répertorier tous les environnements d'exécution .NET Core installés, utilisez dotnet --list-runtimes

(testé sur Windows le 3 juin 2018, puis le 23 août 2018)

Mise à jour le 24 octobre 2018: La meilleure option est probablement maintenant dotnet --info dans une fenêtre de terminal ou PowerShell, comme mentionné dans d'autres réponses.

6
Manfred

Sous Windows, il vous suffit d’ouvrir la commande Invite et de taper:

dotnet --version

Si le framework .net installé, vous aurez la version actuelle installée

voir capture d'écran:

 enter image description here

5
Eli Dagan

Regardez dans C:\Program Files\dotnet\shared\Microsoft.NETCore.App pour voir quelles versions du moteur d'exécution contiennent des répertoires. La source.

Beaucoup de réponses ici confondent le SDK avec le Runtime, qui sont différents. 

0
jaycer

Après toutes les autres réponses, cela pourrait s'avérer utile.

Ouvrez votre application dans Visual Studio. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur votre projet. Cliquez sur Propriétés. Cliquez sur application. Sous "Cadre cible", cliquez sur le bouton déroulant. Vous y trouverez tous les cadres installés.

BTW - vous pouvez maintenant choisir quel framework vous voulez.

0
Baruch Atta