Как я могу скомпилировать проект Visual Studio C# без файла DLL по умолчанию? - PullRequest
0 голосов
/ 29 мая 2020

Я сразу перейду к делу.

Я делаю компилятор в C# и создаю его с помощью Visual Studio. Когда я собираю свой компилятор для исполняемого файла, он также создает DLL "среды выполнения", как я могу заставить Visual Studio создавать только исполняемый файл без DLL? (это основной проект. net)

реклама c .csproj

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.0</TargetFramework>
  </PropertyGroup>

</Project>

решение


Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.29509.3
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "hype", "hype.csproj", "{4653DC57-ACFF-419D-A57C-CEF0B5ECA174}"
EndProject
Global
    GlobalSection(SolutionConfigurationPlatforms) = preSolution
        Debug|Any CPU = Debug|Any CPU
        Release|Any CPU = Release|Any CPU
    EndGlobalSection
    GlobalSection(ProjectConfigurationPlatforms) = postSolution
        {4653DC57-ACFF-419D-A57C-CEF0B5ECA174}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
        {4653DC57-ACFF-419D-A57C-CEF0B5ECA174}.Debug|Any CPU.Build.0 = Debug|Any CPU
        {4653DC57-ACFF-419D-A57C-CEF0B5ECA174}.Release|Any CPU.ActiveCfg = Release|Any CPU
        {4653DC57-ACFF-419D-A57C-CEF0B5ECA174}.Release|Any CPU.Build.0 = Release|Any CPU
    EndGlobalSection
    GlobalSection(SolutionProperties) = preSolution
        HideSolutionNode = FALSE
    EndGlobalSection
    GlobalSection(ExtensibilityGlobals) = postSolution
        SolutionGuid = {8D8BF52E-5BB5-4F40-8365-9A6C3EBD042E}
    EndGlobalSection
EndGlobal

1 Ответ

2 голосов
/ 29 мая 2020

Из ссылки здесь: https://docs.microsoft.com/en-us/dotnet/core/whats-new/dotnet-core-3-0

Чтобы опубликовать sh однофайловый исполняемый файл, установите PublishSingleFile в своем проекте или в командной строке с помощью do tnet publi sh команда:

<PropertyGroup>
  <RuntimeIdentifier>win10-x64</RuntimeIdentifier>
  <PublishSingleFile>true</PublishSingleFile>
</PropertyGroup>

OR

dotnet publish -r win10-x64 -p:PublishSingleFile=true
...