it-roy-ru.com

Как определить, установлен ли .NET Core

Я знаю, что для более старых версий .NET вы можете определить, установлена ​​ли данная версия, выполнив 

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

Существует ли официальный метод определения, установлен ли .NET Core ?

(И я не имею в виду SDK, я хочу проверить сервер без SDK, чтобы определить, установлен ли на нем DotNetCore.1.0.0-WindowsHosting.exe)

Я могу видеть 

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

с версией # 1.0.11123.0 на моем компьютере с Windows 7, но я не вижу то же самое на моем компьютере с Windows 10.

174
weloytty

Использование Powershell :

Runtimes:

(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

Отличный вопрос и ответ не простой. Нет команды «показать все версии .net core», но есть надежда.

Правка:

Я не уверен, когда он был добавлен, но команда info теперь включает эту информацию в свой вывод. Он распечатает установленные среды выполнения и SDK, а также некоторую другую информацию:

dotnet --info

Если вы хотите видеть только SDK: dotnet --list-sdks

Если вы хотите видеть только установленные среды выполнения: dotnet --list-runtimes

Я на Windows, но я думаю, что это будет работать на Mac или Linux с текущей версией.

Также вы можете обратиться к .NET Core Download Archive , чтобы помочь вам расшифровать версии SDK.


СТАРШАЯ ИНФОРМАЦИЯ: Все, что ниже этого пункта, является старой информацией, которая менее актуальна, но все же может быть полезной.

Смотрите установленный Runtimes:

Откройте C:\Program Files\dotnet\shared\Microsoft.NETCore.App в проводнике Windows

Смотрите установленные SDK's:

Откройте C:\Program Files\dotnet\sdk в проводнике Windows

(Источник для локаций: Блог разработчика )


Кроме того, вы можете увидеть latest Runtime и SDK версии, установленные, выполнив эти команды в командной строке:

dotnetПоследняя версия Runtime - это первая вещь в списке.ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Это больше не работает, но может работать для более старых версий.

dotnet --versionПоследняя версия SDKОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Очевидно, что на результат могут влиять любые файлы конфигурации global.json.


В macOS вы можете проверить версию ядра .net с помощью команды ниже.

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

На Ubuntu или Alpine:

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

Будет выведен список папок с именем установленной версии.

201
Sean

Правильный ответ для сред только во время выполнения без SDK, таких как сервер с установленным пакетом хостинга Windows, - запустить PowerShell с помощью следующей команды:

dotnet --info

В соответствии с официальной документацией :

  • Параметр --version «Распечатывает версию используемого .NET Core SDK». и, следовательно, не работает, если SDK не установлен. В то время как...
  • Параметр --info «Печатает подробную информацию об инструментах CLI и среде, таких как текущая операционная система, подтверждение SHA для версии и другую информацию».

Вот еще одна официальная статья, объясняющая, как .NET Core версии работает. :)

111
Chiramisu

Вы можете проверить, доступен ли dotnet.exe:

where dotnet

Затем вы можете проверить версию:

dotnet --version

68
Robert Paulsen

Один из фиктивных способов определить, установлен ли .NET Core в Windows:

  • Нажмите Windows + R
  • Введите cmd
  • В командной строке введите dotnet --version

dotnet --version

Если .NET Core установлен, мы не должны получать никаких ошибок в вышеуказанных шагах.

46
student

(1) Если вы находитесь в оконной системе.

Откройте командную строку.

 dotnet --version

(2) Запустите приведенную ниже команду, если вы работаете в системе Linux.

dotnet --version

dotnet --info
15
Hiren Parghi

Я работаю в основном с машинами и серверами для разработки Windows. 

Я просто хотел указать (по крайней мере, для NET.Core 2.0 и выше), единственное, что нужно, это выполнить dotnet --info в командной строке, чтобы получить информацию об последней версии, установленной. Если установлено ядро ​​.NET, вы получите ответ.

На моей машине разработки (Windows 10) результат выглядит следующим образом. SDK 2.1.2 и время выполнения 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

На одном из моих серверов под управлением Windows Server 2016 с пакетом хостинга Windows Server (без SDK) результат выглядит следующим образом. Нет SDK, время выполнения 2.0.3.

Microsoft .NET Core Shared Framework Host

Version  : 2.0.3
Build    : a9190d4a75f4a982ae4b4fa8d1a24526566c69df

Ура!

12
Hakan Çelik MK1

Следующие команды доступны с .NET Core SDK 2.1 (v2.1.300) :

Для просмотра списка всех установленных .NET Core SDK используйте: dotnet --list-sdks

Для просмотра списка всех установленных сред выполнения .NET Core используйте dotnet --list-runtimes

(проверено на Windows на момент написания, 3 июня 2018 г. и снова 23 августа 2018 г.)

Обновление от 24 октября 2018: Лучшая опция, вероятно, теперь dotnet --info в терминале или окне PowerShell, как уже упоминалось в других ответах.

6
Manfred

В Windows вам нужно всего лишь открыть командную строку и ввести:

dotnet --version

Если установлена ​​основная платформа .net, вы получите текущую установленную версию

смотреть скриншот:

 enter image description here

5
Eli Dagan

Посмотрите в C:\Program Files\dotnet\shared\Microsoft.NETCore.App, чтобы увидеть, какие версии среды выполнения имеют каталоги там. Источник.

Многие ответы здесь путают SDK с Runtime, которые отличаются. 

0
jaycer

После всех остальных ответов это может оказаться полезным.

Откройте ваше приложение в Visual Studio. В обозревателе решений щелкните правой кнопкой мыши свой проект. Нажмите Свойства. Нажмите Приложение. Под «Target Framework» нажмите кнопку с раскрывающимся списком, и вот вы все установленные фреймворки.

Кстати - вы можете теперь выбрать, какой каркас вы хотите.

0
Baruch Atta