Как определить, какая версия Microsoft.NETCore.Приложение выполняется с использованием C#

#c# #asp.net-core

#c# #asp.net-core

Вопрос:

В моем приложении на странице работоспособности я хотел бы знать, какая среда выполнения Dot net core используется для размещения приложения.

У нас есть Environment.Version , но это показывает только что-то вроде этого.

 {4.0.30319.42000}
Build: 30319
Major: 4
MajorRevision: 0
Minor: 0
MinorRevision: -23536
Revision: 42000
  

Есть ли способ, которым я могу узнать, какая версия ASP.NET Ядро используется вместе с младшей версией, такой как 2.2.3?

Ответ №1:

Надеюсь, приведенный ниже код должен работать:

 System.Reflection.Assembly assembly = Assembly.GetAssembly(t);
FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(assembly.Location);
string version = fvi.FileVersion;
  

Где: t is typeof(sometype from Microsoft.NetCore.App assembly)

Комментарии:

1. Он не выдает версию, подобную 2.2.3, он выдает версию файла 2.2.2.19024

2. Приведенный выше код получает версию файла, а не версию сборки. Возможно, вам нужна версия на ассемблере. Можете ли вы попробовать сборку. getName().Version и проверить, работает ли это?

3. Это также не дает правильного ответа, оно дает что-то вроде этого 2.2.2.19024