VSCode doesn't support the .sln files the same way as VS. It is a directory based editor first of all, not a full IDE. For example, the VSCode Explorer is used to browse, open, and manage all of the files and folders in your project (workspace).
All workspace settings are stored inside your workspace in a .vscode folder and only apply when the workspace is opened. Settings defined on this scope override the user scope. It may help to think about workspace as a root folder that was used to open the project in VSCode.
In general, to be able to build, debug and run the application in VSCode, you need to configure build task and launch configuration.
VS Code provides a conception of
- tasks to allow actions like project building. Tasks are defined in
task.json file;
- launch configuration so you can run/debug app. Launch configs are described in
launch.json.
VSCode looks for this files also in your workspace's .vscode folder.
During the configuration process, if you need to specify a path to something in your project, it is common practice to define it as a relative path to this workspace folder by using ${workspaceRoot} variable.
If you install C# for Visual Studio Code (powered by OmniSharp) extension, it helps you to generate appropriate configurations for .NET Core projects.