trae开发c#

安装插件C# Dev Kit,使用的版本是1.41.11

.NET Install Tool一般会自动安装,安装C# dev kit的时候,版本2.3.7

C# 插件,版本2.87.31

https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.vscode-dotnet-runtime

https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp

https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csdevkit

下载vsix然后拖拽到侧边栏即可自动安装

与操作系统平台相关,可在下载链接后增加:"?targetPlatform={platform}",如:

https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ms-dotnettools/vsextensions/csharp/2.63.32/vspackage?targetPlatform=win32-x64

platform选项:

win32-x64: Windows 64-bit

win32-ia32: Windows 32-bit

win32-arm64: Windows ARM64

darwin-x64: macOS Intel

darwin-arm64: macOS Apple Silicon

linux-x64: Linux 64-bit

linux-arm64: Linux ARM64

alpine-x64: Alpine Linux

下载地址如下

https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ms-dotnettools/vsextensions/vscode-dotnet-runtime/2.3.7/vspackage

https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ms-dotnettools/vsextensions/csharp/2.87.31/vspackage?targetPlatform=win32-x64

https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ms-dotnettools/vsextensions/csdevkit/1.41.11/vspackage?targetPlatform=win32-x64

安装顺序安装即可,如果版本不支持就降低一个版本

ctrl+shift+p

选择保存的文件夹,然后输入项目名称即可

选择解决方案格式

确认路径之后创建成功


配置如下

json 复制代码
{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
     {
            "name": "WebApplication1",
            "type": "dotnet",
            "request": "launch",
            "projectPath": "${workspaceFolder}/WebApplication1/WebApplication1.csproj"
        },
    ]
}

微软做了限制,可以愉快写代码,如果可以接受两个编辑器调试建议vs或者vs code,不接受的话可以接入三星的netcoredbg

https://github.com/Samsung/netcoredbg

解压到E:\Software\netcoredbg

新建tasks.json

json 复制代码
{
  "version": "2.0.0",
  "tasks": [
      {
          "label": "build",
          "command": "dotnet",
          "type": "process",
          "args": [
              "build",
              "${workspaceFolder}/WebApplication1"
          ],
          "problemMatcher": "$msCompile"
      }
  ]
}

修改launch.json

json 复制代码
{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask":  "build",
            "name": ".NET Core Launch (console)",
            "program": "${workspaceFolder}/WebApplication1/bin/Debug/net9.0/WebApplication1.dll",
            "args": [],
            "cwd": "${workspaceFolder}",
            "stopAtEntry": false,
            "internalConsoleOptions": "openOnSessionStart",
            "pipeTransport": {
                "pipeCwd": "${workspaceFolder}",
                "pipeProgram": "cmd",
                "pipeArgs": ["/c"],
                "debuggerPath": "E:\\Software\\netcoredbg\\netcoredbg.exe",
                "debuggerArgs": ["--interpreter=vscode"],
                "quoteArgs": true
              },
        }
    ]
}

开始调试


如果想一次开启多个项目,需要如下的配置

json 复制代码
{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build",
            "name": "WebApplication1",
            "program": "${workspaceFolder}/WebApplication1/bin/Debug/net9.0/WebApplication1.dll",
            "args": [],
            "cwd": "${workspaceFolder}",
            "stopAtEntry": false,
            "internalConsoleOptions": "openOnSessionStart",
            "pipeTransport": {
                "pipeCwd": "${workspaceFolder}",
                "pipeProgram": "cmd",
                "pipeArgs": [
                    "/c"
                ],
                "debuggerPath": "E:\\Software\\netcoredbg\\netcoredbg.exe",
                "debuggerArgs": [
                    "--interpreter=vscode"
                ],
                "quoteArgs": true
            },
            "env":{
                "ASPNETCORE_ENVIRONMENT":"Development",
                "ASPNETCORE_URLS":"http://localhost:5051"
            }
        },
        {
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build2",
            "name": "WebApplication2",
            "program": "${workspaceFolder}/WebApplication2/bin/Debug/net9.0/WebApplication2.dll",
            "args": [],
            "cwd": "${workspaceFolder}",
            "stopAtEntry": false,
            "internalConsoleOptions": "openOnSessionStart",
            "pipeTransport": {
                "pipeCwd": "${workspaceFolder}",
                "pipeProgram": "cmd",
                "pipeArgs": [
                    "/c"
                ],
                "debuggerPath": "E:\\Software\\netcoredbg\\netcoredbg.exe",
                "debuggerArgs": [
                    "--interpreter=vscode"
                ],
                "quoteArgs": true
            }, 
            "env":{
                "ASPNETCORE_ENVIRONMENT":"Development",
                "ASPNETCORE_URLS":"http://localhost:5037"
            }
        }
    ],
    "compounds": [
        {
            "name": "Debug Both Applications",
            "configurations": [
                "WebApplication1",
                "WebApplication2"
            ]
        }
    ]
}

代码

链接:https://pan.quark.cn/s/45dedc25c5b4

提取码:7H7s

参考

https://github.com/Trae-AI/Trae/issues/311

https://blog.csdn.net/wzl644/article/details/146067628

https://engincanveske.substack.com/p/debug-your-net-apps-in-cursor-code