Development

Debug ASP.NET Core trên VS Code: Hướng dẫn chi tiết từ A-Z

By Ginbok5 min read

Visual Studio Code là trình soạn thảo nhẹ nhưng mạnh mẽ, hỗ trợ đầy đủ gỡ lỗi từng bước (step-by-step debugging) cho các ứng dụng ASP.NET Core. Với thiết lập chính xác, bạn có thể gỡ lỗi các controllers, services, middleware và Web APIs giống hệt như khi sử dụng Visual Studio.

Hướng dẫn này sẽ trình bày mọi thứ bạn cần biết, từ các điều kiện tiên quyết cho đến các kịch bản gỡ lỗi nâng cao.


1. Điều kiện tiên quyết

Trước khi gỡ lỗi ASP.NET Core trong VS Code, hãy đảm bảo bạn đã cài đặt những thứ sau:

1.1 Cài đặt .NET SDK

Bạn phải cài đặt .NET SDK, không chỉ runtime.

Xác minh việc cài đặt:

dotnet --version 

1.2 Cài đặt Visual Studio Code

Tải xuống và cài đặt phiên bản mới nhất của Visual Studio Code.

1.3 Cài đặt Extension C#

Trong VS Code, hãy cài đặt:


2. Mở Project ASP.NET Core của Bạn

Mở thư mục gốc của project ASP.NET Core trong VS Code (thư mục chứa tệp .csproj).

Nếu đây là lần đầu tiên bạn mở một project C#, VS Code sẽ yêu cầu khôi phục các dependency — hãy chấp nhận.


3. Tạo Cấu hình Gỡ lỗi (launch.json)

3.1 Tự động tạo launch.json

  1. Mở panel Run & Debug (Ctrl + Shift + D)

  2. Nhấp vào Create a launch.json file

  3. Chọn .NET Core

  4. Chọn ASP.NET Core

VS Code sẽ tạo ra tệp .vscode/launch.json.

3.2 Cấu hình launch.json mẫu

 
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "ASP.NET Core",
      "type": "coreclr",
      "request": "launch",
      "preLaunchTask": "build",
      "program": "${workspaceFolder}/bin/Debug/net8.0/YourProject.dll",
      "args": [],
      "cwd": "${workspaceFolder}",
      "stopAtEntry": false,
      "serverReadyAction": {
        "action": "openExternally",
        "pattern": "\\bNow listening on:\\s+(https?://\\S+)"
      },
      "env": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    }
  ]
}

⚠️ Đảm bảo rằng:


4. Đặt Breakpoint

Mở bất kỳ tệp C# nào và nhấp vào bên cạnh số dòng để đặt breakpoint.

Ví dụ trong một controller:

 
[HttpGet("{id}")] public IActionResult GetUser(int id) { var user = _userService.GetById(id); // breakpoint here return Ok(user); }

Breakpoints có thể được đặt tại:


5. Bắt đầu Gỡ lỗi

Nhấn F5 hoặc nhấp vào Start Debugging.

VS Code sẽ:

Kích hoạt yêu cầu API bằng cách sử dụng:

Khi yêu cầu chạm tới breakpoint của bạn, quá trình thực thi sẽ tạm dừng.


6. Các Điều khiển Gỡ lỗi Từng bước

Trong khi tạm dừng, bạn có thể sử dụng:

Bạn cũng có thể kiểm tra:


7. Gỡ lỗi Web APIs

VS Code hoạt động hoàn hảo để gỡ lỗi Web APIs.

Quy trình làm việc điển hình:

  1. Bắt đầu gỡ lỗi với F5

  2. Mở Swagger hoặc Postman

  3. Gửi yêu cầu HTTP

  4. Breakpoint được kích hoạt

  5. Kiểm tra dữ liệu yêu cầu và logic từng bước

Điều này đặc biệt hữu ích cho:


8. Gắn Debugger vào Ứng dụng đang Chạy (Attach)

Nếu ứng dụng của bạn đã chạy bằng lệnh:

 
dotnet run

Bạn vẫn có thể gỡ lỗi nó:

  1. Mở Run & Debug

  2. Chọn .NET Core Attach

  3. Chọn tiến trình dotnet chính xác

Tính năng này hữu ích cho:


9. Các Vấn đề Thường gặp và Khắc phục

Breakpoint không được kích hoạt

OmniSharp không hoạt động


10. VS Code so với Visual Studio

VS Code lý tưởng khi bạn:

Visual Studio có thể tốt hơn khi bạn:


Kết luận

Visual Studio Code cung cấp hỗ trợ gỡ lỗi từng bước đầy đủ cho ASP.NET Core. Với các breakpoint, kiểm tra biến và gỡ lỗi API, đây là một lựa chọn mạnh mẽ cho phát triển .NET hiện đại—đặc biệt đối với các dự án backend và Web API.

Nếu bạn ưu tiên tốc độ, tính linh hoạt và hỗ trợ đa nền tảng, VS Code là một lựa chọn tuyệt vời để gỡ lỗi ASP.NET Core.

#VSCode#ASPNETCore#Debugging#DotNet#CSharp#Development#ProgrammingTips#CodeEditor
← Back to Articles