C# 从一个.Net核心项目中创建两个单独的EXE?

C# 从一个.Net核心项目中创建两个单独的EXE?,c#,.net-core,C#,.net Core,我有两个简单、独立的命令行程序。每个文件都是一个源文件(比如Program1.cs&Program2.cs),每个文件都包含一个静态void Main(..),并且每个文件都应编译为一个独立的二进制文件。它们是相关的,所以为了简单起见,我想保存在一个目录中 使用.Net pre-Core,使用csc程序可以轻松构建。cs&生成exe 有没有办法在.NETCore中复制这一点?或者它意味着两个独立的项目?到目前为止,我找不到在一个项目中生成两个二进制文件的方法,每个二进制文件都有一个单独的入口点

我有两个简单、独立的命令行程序。每个文件都是一个源文件(比如
Program1.cs
&
Program2.cs
),每个文件都包含一个
静态void Main(..)
,并且每个文件都应编译为一个独立的二进制文件。它们是相关的,所以为了简单起见,我想保存在一个目录中

使用.Net pre-Core,使用
csc程序可以轻松构建。cs
&生成exe

有没有办法在.NETCore中复制这一点?或者它意味着两个独立的项目?到目前为止,我找不到在一个项目中生成两个二进制文件的方法,每个二进制文件都有一个单独的入口点

谢谢

--

  • 这些是简单的演示。我知道它可能不代表典型的项目,在这些项目中,有多个源文件和一个入口点。然而,将规模缩小到简单案例的能力也很重要

您可以为每个程序使用单独的配置,并在该配置集中使用要编译的文件

在您的情况下,project.json的相关部分可能如下所示:

"configurations": {
  "Program1": {
    "buildOptions": {
      "compile": {
        "exclude": "Program2.cs"
      }
    }
  },
  "Program2": {
    "buildOptions": {
      "compile": {
        "exclude": "Program1.cs"
      }
    }
  }
}

然后,您可以使用
dotnet build-c Program1
构建Program1,并使用
dotnet run-c Program1
运行它,同样地,也可以使用Program2运行它。

不确定是否可以使用单个项目来完成此操作,但可以使用单个解决方案来完成。将您的类放置在解决方案中的不同项目中,然后:解决方案属性->公共属性->启动项目->多个启动项目。@user5226582,但不会将它们构建到同一目录中。当他点击F5时,它只会启动这两个功能。你可以自动完成:这个问题是关于.NET核心的,基于解决方案的方法在那里不起作用。我的错,错过了。