在不使用Visual Studio 2017的情况下调试.Net Core控制台应用程序

4

我想运行和调试一个 .Net Core (2.2) 控制台应用程序(不是 ASP.Net Core!)。 因此,我创建了一个非常简单的应用程序:

public static class Program
{
    public static void Main(string[] args)
    {
        WriteLine("**Environment**");
        WriteLine($"Platform: .NET Core");
        WriteLine($"OS: {RuntimeInformation.OSDescription}");
        WriteLine();
        ReadLine();
    }

    private static (string, bool) ParseArgs(string[] args)
    {
        var buffer = new StringBuilder();
        var withColor = false;
        foreach (var s in args)
        {
            if (s == "--with-color")
            {
                withColor = true;
                continue;
            }
            buffer.Append(" ");
            buffer.Append(s);
        }

        return (buffer.ToString(), withColor);
    }
}

新增了一个Docker文件。

添加了Microsoft.VisualStudio.Azure.Containers.Tools.Targets NuGet包。

最后将launchSettings.json更改为:

{
  "profiles": {
    "dotnetapp": {
      "commandName": "Project"
    },
    "Docker": {
      "commandName": "Docker"
    }
  }
}

所以整个看起来都像是带有docker支持的默认ASP.Net Core WebApp。

但是在“运行”时,我只会得到一个错误“无法使用此应用程序执行配置文件'Docker'”。

我不明白,有什么区别?如何以与运行.NET Core ASP应用程序相同的方式运行简单的.NET Core应用程序?

enter image description here


您在Visual Studio中安装了“容器开发工具”组件吗?您可以通过打开Visual Studio Installer,单击“修改”,并查看是否在“个别组件”选项卡下选择它来进行检查。 - Collin Barrett
如果您还没有安装Docker桌面版,您可能也需要安装它。 - Collin Barrett
即使使用Asp.Net Core应用程序,也有“添加-> Docker支持”等菜单选项,我可以轻松地在docker中运行它。 - Steffen Mangold
有点奇怪,嗯。我不确定。我有一个使用docker在VS 2019中调试良好的Core控制台应用程序。如果你想进行任何并排比较,可以在这里找到:https://github.com/collinbarrett/FilterLists/tree/master/src/FilterLists.Agent - Collin Barrett
1
确实,使用VS2019它可以工作!感谢@Collin Barrett,请将您的答案作为解决方案,我会将其标记为有效。 - Steffen Mangold
1个回答

1

看起来像是没有回答,但在Visual Studio 2019中这对于Steffen(和我自己)似乎有效。也许在Visual Studio 2017的工具中存在一个错误…


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接