VS Code调试.NET Core

VS Code调试.NET Core应用遇到的坑

为什么会有”坑“

  博客园里有好多介绍怎么使用VS Code以及调试.NET Core的文章,但是都是基于直接构建Asp.Net Core Mvc单项目的,有什么区别呢!

  (1).我们这次遇到的坑是在多项目的解决方案中遇到的,也就是说根目录不是一个项目的目录;

  (2).DEBUG项目不能加载符号文件,导致项目不能断点调试;

解决问题

  1.关于解决方案的目录问题

  在launch.json中将 "program" 节点修改下:

  "program": "${workspaceRoot}”,workspaceRoot是解决方案目录,修改这个值为"${workspaceRoot}/子项目目录/bin/Debug/netcoreapp1.0/<项目名称>.dll"

  修改后,DEBUG发现没办法Build, 提示 Couldn‘t find ‘project.json‘ in current directory 。

  其实,原因是一样的都是找不到项目目录造成的,修改 tasks.json文件:

  为其添加一个options节点:

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "0.1.0",
    "command": "dotnet",
    "isShellCommand": true,
    "args": [],
    "options": {
        "cwd": "${workspaceRoot}/子项目目录"
    },
    "tasks": [
        {
            "taskName": "build",
            "args": [ ],
            "isBuildCommand": true,
            "showOutput": "silent",
            "problemMatcher": "$msCompile"
        }
    ]
}

  options的cwd节点,指定了dotnet命令行的工作目录, 这样修改后就可以正常build了。

  2.关于DEBUG不能断点调试

  查看LOG,发现DEBUG时会提示如下信息:

  Could not load symbols for ‘*.dll‘. ‘*.pdb‘ is a Windows PDB. These are not supported by the cross-platform .NET Core debugger.

  大概的意思就是在windows下生成的符号文件,不能被跨平台的调试器加载。

  解决方案很简单,在每个需要调试的项目文件(project.json)中,加入一个节点信息如下:

  "buildOptions": {
    "debugType": "portable"
  }

project.json

这是YOYOFx开源框架一个项目的project.json片段。

YOYOFx框架

GitHub:https://github.com/maxzhang1985/YOYOFx    Star下, 欢迎一起交流。

YOYOFx是一个轻量级用于构建基于 HTTP 的 Web 服务,基于 .NET 和 Mono 平台。

时间: 2024-10-23 12:43:53

VS Code调试.NET Core的相关文章

visual studio code调试.net core 2.0程序

最近在试.net 2.0 Preview时,在VS2017中相对麻烦,现说也怕把生产环境搞坏,于是就想在vs code下试试. 首在安装.net core 2.0的SDK和Runtime,这里下载 https://github.com/dotnet/core/blob/master/release-notes/download-archives/2.0.0-preview1-download.md 再安装vs code(我安装的是中文版),这里下载 https://code.visualstud

VS Code调试.Net Core版Hello World

安装C#插件 下载安装插件,地址:https://marketplace.visualstudio.com/items?itemName=ms-vscode.csharp 安装插件之后重新启动VS Code 借助dotnet命令创建Console项目 使用dotnet的前提是,下载安装.Net Core SDK 当前最新版本的是2.2,下载页面:https://dotnet.microsoft.com/download 或者直接点击下载:https://dotnet.microsoft.com/

Mac上使用Visual Studio Code开发/调试.NET Core代码

Mac上使用Visual Studio Code开发/调试.NET Core代码 .Net Core 1.0终于发布了,Core的一大卖点就是跨平台.这个跨平台不只是跨平台运行,而且可以跨平台开发.今天抽空研究了下在Mac下如何使用VS Code来开发.NET Core程序,并且调试代码. 1.安装.NET Core 在mac上打开终端: ~$ brew update ~$ brew install openssl ~$ brew link --force openssl 如果不能使用brew命

在Mac上使用Visual Studio Code开发/调试.NET Core代码

.Net Core 1.0终于发布了,Core的一大卖点就是跨平台.这个跨平台不只是跨平台运行,而且可以跨平台开发.今天抽空研究了下在Mac下如何使用VS Code来开发.NET Core程序,并且调试代码. 1.安装.NET Core 在mac上打开终端: ~$ brew update ~$ brew install openssl ~$ brew link --force openssl 如果不能使用brew命令,先安装homebrew,玩转Mac必备. 下载.NET Core SDK:ht

使用VS Code从零开始开发调试.NET Core 1.0

使用VS Code 从零开始开发调试.NET Core 1.0. .NET Core 是一个开源的.跨平台的 .NET 实现. VS Code 全称是 Visual Studio Code,Visual Studio Code是一个轻量级的跨平台Web集成开发环境,可以运行在 Linux,Mac 和Windows下! 从零开始开发调试.NET Core 1.0,让你更好的了解.NET Core 应用程序. 本篇VS Code 开发教程是在windows做实际操作,但同样适用于其它系统.VS Co

使用VS Code从零开始开发调试.NET Core 1.1

使用VS Code 从零开始开发调试.NET Core 1.1.无需安装VS 2017 RC 即可开发调试.NET Core 1.1应用. .NET Core 1.1 发布也有一段时间了,最大的改动是从 project.json 还原回了csproj . 今天微软发布 .NET Core SDK 1.0 RC4 版本,离RTM版本也很近了. 对于.NET Core 1.0 可以查看之前教程 使用VS Code从零开始开发调试.NET Core 1.0. 本篇为VS Code 开发.NET Cor

VS Code开发调试.NET Core 2.0

VS Code开发调试.NET Core 2.0 使用VS Code 从零开始开发调试.NET Core 2.0.无需安装VS 2017 15.3+即可开发调试.NET Core 2.0应用. VS Code 全称是 Visual Studio Code,Visual Studio Code是一个轻量级的跨平台Web集成开发环境,可以运行在 Linux,Mac 和Windows下! 本篇为VS Code 开发调试.NET Core 2.0教程,在Windows下做实际操作,但同样适用于其它系统.

VS Code开发调试.NET Core

使用VS Code开发 调试.NET Core 应用程序 使用VS Code开发 调试.NET Core RC2应用程序,由于.NET Core 目前还处于预览版. 本文使用微软提供的示例进行开发及调试. https://github.com/aspnet/cli-samples .NET Core 介绍及说明: https://github.com/dotnet/cli http://dotnet.github.io/getting-started/ 环境安装 本文开发的实际环境: win10

使用VS Code开发调试.NET Core 多项目

使用Visual Studio Code(VS Code)开发调试.NET Core和ASP.NET Core 多项目multiple project. 之前讲解过如果使用Visual Studio Code(VS Code) 开发单个.NET Core和ASP.NET Core项目,大家也都知道如何开发. 多项目可能有些人还不大了解,今天给大家介绍一下. 本文将介绍如何开发调试多项目,及项目的引用,以及多项目的切换. 环境安装 本文开发环境: WIN10 x64 Visual Studio C