Информация об изменениях

Сообщение Re[4]: .NET 5 минимальное консольное приложение от 27.10.2021 13:17

Изменено 27.10.2021 13:20 Vladek

Re[4]: .NET 5 минимальное консольное приложение
Здравствуйте, HotDog, Вы писали:

HD>Здравствуйте, _NN_, Вы писали:


_NN>>Нужна публикация через `dotnet publish` или в студии `Publish` ( https://docs.microsoft.com/ru-ru/dotnet/core/tutorials/publishing-with-visual-studio?pivots=dotnet-5-0 )


HD>Хорошо, работает... Работает в том смысле, что я получил один exe файл размером в 60 Mb и работающим только на win64

HD>Но это не то, чего я хотел добиться. Хотелось бы получить один ехе, который работает на компе где уже предустановлен .NET5, независимо от платформы (х86,х64)
HD>Т.е. аналог консольной программы написанной на .NET FW 4.x

Ну вот содержание такого профиля, всё настраивается в настройках публикации:
<?xml version="1.0" encoding="utf-8"?>
<!--
https://go.microsoft.com/fwlink/?LinkID=208121. 
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <Configuration>Release</Configuration>
    <Platform>Any CPU</Platform>
    <PublishDir>bin\Release\net5.0\publish\</PublishDir>
    <PublishProtocol>FileSystem</PublishProtocol>
    <TargetFramework>net5.0</TargetFramework>
    <RuntimeIdentifier>win-x64</RuntimeIdentifier>
    <SelfContained>false</SelfContained>
    <PublishSingleFile>True</PublishSingleFile>
    <PublishReadyToRun>False</PublishReadyToRun>
  </PropertyGroup>
</Project>


Конкретную платформу выбрать всё же придётся, без неё единого исполняемого файла не получить. Файл получится небольшого размера.
Re[4]: .NET 5 минимальное консольное приложение
Здравствуйте, HotDog, Вы писали:

HD>Здравствуйте, _NN_, Вы писали:


_NN>>Нужна публикация через `dotnet publish` или в студии `Publish` ( https://docs.microsoft.com/ru-ru/dotnet/core/tutorials/publishing-with-visual-studio?pivots=dotnet-5-0 )


HD>Хорошо, работает... Работает в том смысле, что я получил один exe файл размером в 60 Mb и работающим только на win64

HD>Но это не то, чего я хотел добиться. Хотелось бы получить один ехе, который работает на компе где уже предустановлен .NET5, независимо от платформы (х86,х64)
HD>Т.е. аналог консольной программы написанной на .NET FW 4.x

Ну вот содержание такого профиля, всё настраивается в настройках публикации:
<?xml version="1.0" encoding="utf-8"?>
<!--
https://go.microsoft.com/fwlink/?LinkID=208121. 
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <Configuration>Release</Configuration>
    <Platform>Any CPU</Platform>
    <PublishDir>bin\Release\net5.0\publish\</PublishDir>
    <PublishProtocol>FileSystem</PublishProtocol>
    <TargetFramework>net5.0</TargetFramework>
    <RuntimeIdentifier>win-x64</RuntimeIdentifier>
    <SelfContained>false</SelfContained>
    <PublishSingleFile>True</PublishSingleFile>
    <PublishReadyToRun>False</PublishReadyToRun>
  </PropertyGroup>
</Project>


Конкретную платформу (RuntimeIdentifier) выбрать всё же придётся, без неё единого исполняемого файла не получить. Файл получится небольшого размера.