使用dotnet run运行.NET Core App的多个并行实例

Sor*_*ren 4 asp.net-core

我收到以下错误:

C:\ Program Files \ dotnet \ sdk \ 2.0.3 \ Microsoft.Common.CurrentVersion.targets(4052,5):警告MSB3026:无法将“ obj \ Debug \ netcoreapp2.0 \ MyApp.dll”复制到“ bin \ Debug \ netcoreapp2.0 \ MyApp.dll”。在1000毫秒内开始重试1。该进程无法访问文件'C:\ stackoverflow \ MyApp \ bin \ Debug \ netcoreapp2.0 \ MyApp.dll',因为该文件正在被另一个进程使用。[C:\ stackoverflow \ MyApp \ MyApp.csproj]

当尝试dotnet run从不同终端对同一项目多次使用时。如何在开发时轻松地运行同一应用程序的多个实例,而不必复制文件夹?

如果我在完全相同的时间同时启动它们,则有时会起作用:/

小智 6

我有同样的问题,并使用--no-build选项解决了它:

dotnet run --no-build <path to .dll> <args>
Run Code Online (Sandbox Code Playgroud)

请看一下: MSDN文档

  • 这是正确的答案。您不需要 dll 路径,并且可以将参数放在 --no-build 的任一侧。 (2认同)

Mat*_*Dev 5

我使用bat文件一次运行6个应用实例。唯一的问题是当我开始构建应用程序并立即运行脚本时。因此,我认为您应该确保构建过程结束。然后运行您的bat文件,例如dotnet运行重复六次。您的应用应构建为执行此文件。

start /d "." dotnet run args
start /d "." dotnet run args
start /d "." dotnet run args
start /d "." dotnet run args
start /d "." dotnet run args
start /d "." dotnet run args
Run Code Online (Sandbox Code Playgroud)