Получить текущую версию .NET CLR во время выполнения? - PullRequest
37 голосов
/ 01 декабря 2009

Как получить текущую версию CLR Runtime в работающей программе .NET?

Ответы [ 3 ]

40 голосов
/ 01 декабря 2009

Проверьте System.Environment.Version собственность (http://msdn.microsoft.com/en-us/library/system.environment.version.aspx).

7 голосов
/ 01 декабря 2009

Попробуйте Environment.Version, чтобы получить эту информацию. Также вам может понадобиться позвонить ToString().

6 голосов
/ 22 августа 2018

Начиная с .NET 4.5 вы не можете реально использовать System.Environment.Version (он вернет только 4.0. {Что-то}, что позволяет вам убедиться, что вы "по крайней мере" на 4.0, но не сообщать вам, какая актуальная версия доступна если вы не можете отобразить полный список номеров сборки в).

Вместо этого (как упомянуто @ jim-w) вы должны проверить реестр на "простую" таблицу поиска. Это немного смешно и, учитывая специфику Windows, не работает для .NET Core ...

Однако ... начиная с .NET 4.7.1, они перенесли обратно класс из .NET Core в полную структуру, и теперь вы можете проверить System.Runtime.InteropServices.RuntimeInformation.FrameworkDescription

К сожалению, он возвращает строку с: «.NET Core», «.NET Framework» или «.NET Native» перед номером версии - так что у вас еще есть какой-то синтаксический анализ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...