Получить. Net Core 3.1 однофайловый исполняемый номер версии - PullRequest
0 голосов
/ 18 февраля 2020

У меня есть. Net Базовое приложение, которое было опубликовано в виде отдельного исполняемого файла. Когда я запускаю любой из следующего кода из Visual Studio, я получаю ожидаемый результат:

Assembly.GetAssembly(typeof(Installer)).GetName().Version.ToString();
Assembly.GetEntryAssembly().GetName().Version.ToString();
Assembly.GetExecutingAssembly().GetName().Version.ToString();

Но когда приведенный выше код выполняется в опубликованном приложении (в работе), он всегда возвращает "0.0.0.0 «

Ответы [ 2 ]

1 голос
/ 18 февраля 2020

Вы пробовали это? Я создал новый проект, и он, кажется, работает.

Предполагается, что вы используете Visual Studio 2019.

  1. Щелкните правой кнопкой мыши проект -> Добавить -> Новый элемент -> Файл информации о сборке
  2. После этого у вас будет файл AssemblyInfo.cs с версией сборки в
  3. Затем необходимо игнорировать созданную версию сборки, поэтому вам нужно добавить GenerateAssemblyInfo со значением false в ваш .csproj.
  4. Щелкните правой кнопкой мыши проект -> Изменить файл проекта -> Добавить элемент GenerateAssemblyInfo, как показано ниже:

    <Project Sdk="Microsoft.NET.Sdk.Web">
       <PropertyGroup>
          <TargetFramework>netcoreapp3.1</TargetFramework>
          <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
       </PropertyGroup>
    </Project>
    
0 голосов
/ 18 февраля 2020

Версия сборки должна быть установлена ​​в свойствах проекта, который вы компилируете.

Щелкните правой кнопкой мыши проект -> Свойства -> Пакет:

enter image description here

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