Расширение C# показывает неясную ошибку в VS CodeC#

Место общения программистов C#
Ответить
Anonymous
 Расширение C# показывает неясную ошибку в VS Code

Сообщение Anonymous »

Мое расширение C# (официальное от Microsoft) пытается запустить проект, что вызывает непонятную ошибку. Вероятно, мне нужно изменить это поведение (кнопки «Выполнить/Отладка проекта»), чтобы оно использовало определенную конфигурацию из launch.settings< /code>.
Я использую эту библиотеку для запуска VS Code на моем сервере Ubuntu. Я (вручную) установил расширения для всех своих языков программирования, включая C#.
Расширение C# корректно работает с подсветкой синтаксиса и автодополнением, но не позволяет запустить проект.< /p>
Каждый раз, когда я пытаюсь запустить его (с помощью кнопки воспроизведения, добавленной расширением), я получаю это непонятное сообщение об ошибке

Невозможно разобрать: тип [json.Exception.type_error.302] должен быть массивом, но является строкой

Поиграв немного, я обнаружил, что можно запустить проект, используя конфигурацию launch.json с командой отладки, и это в некоторой степени работает (в строке поиска я пишу «отладка», и он автоматически завершается до «Запуск отладки .Net Core»).
Он запускает мое консольное приложение в консоли отладки, и это нормально, но я не могу отправить какие-либо данные в приложение.
Мои вопросы:< /p>
  • Что это за непонятная ошибка, которую показывает VS Code при запуске проекта?
  • Есть ли другой способ запустить проект ( запуск в терминале не поможет, поскольку у него нет возможностей отладки)
    Возможно, есть способ отправить пользовательский ввод в консоль отладки (хотя поиск Google говорит нет)
Это файл launch.json:
{
"version": "0.2.0",
"configurations": [
{
"name": ".NET Core Debug Launch (console)",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build_debug",
"program": "${fileWorkspaceFolderBasename}/bin/Debug/net8.0/ConsoleApp1.dll",
"args": [],
"cwd": "${workspaceFolder}",
"externalConsole": true,
"stopAtEntry": false
},
{
"name": ".NET Core Release Launch (console)",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build_release",
"program": "${fileWorkspaceFolderBasename}/bin/Release/net8.0/ConsoleApp1.dll",
"args": [],
"cwd": "${workspaceFolder}",
"externalConsole": true,
"stopAtEntry": false
}
]
}

И Tasks.json:
{
"version": "2.0.0",
"tasks": [
{
"label": "build_debug",
"command": "dotnet",
"type": "process",
"args": [
"build",
"${fileWorkspaceFolderBasename}/ConsoleApp1.csproj"
],
"problemMatcher": "$msCompile"
},
{
"label": "build_release",
"command": "dotnet",
"type": "process",
"args": [
"build",
"--configuration",
"Release",
"${fileWorkspaceFolderBasename}/ConsoleApp1.csproj"
],
"problemMatcher": "$msCompile"
}
]
}

Примечание № 1. Я пытался изменить параметр «консоль» в файле launch.json, но это не дало никакого эффекта, независимо от того, какое значение я установил. использовать.
Примечание №2. Я знаю, что эта конфигурация просто запускает программу вывода и на самом деле не запускает приложение .NET Core, но эта конфигурация вызывает ошибка:
{
"name": "C#: ConsoleApp1 Debug",
"type": "dotnet",
"request": "launch",
"projectPath": "${workspaceFolder}/ConsoleApp1/ConsoleApp1.csproj"
},


Подробнее здесь: https://stackoverflow.com/questions/790 ... in-vs-code
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»