dotnet / dotnet/project-system

Replace launchSettings.json with MSBuild properties

Open
#5,804 5 comments 4 reactions 1 assignee Claimed by @drewnoakes View on GitHub
Parity-Legacy-Feature Triage-Investigate
Dominant language
C#
Stars
1k
Forks
415
PR merge metrics
No merged PRs in 30d

Description

In legacy projects, debugging settings were specified in the project file:

```xml

Program
C:\MyRemote\Executable.exe
true
MyRemoteMachine

```

With SDK-style projects, they're kept in `launchSettings.json` which is a hold-over from the `project.json`/`.xproj` days:

```json
{
"profiles": {
"ConsoleApp152": {
"commandName": "Project",
"remoteDebugEnabled": true,
"remoteDebugMachine": "MyServer"
}
}
}
```

This file is stored in the `Properties` folder and tends to end up in version control.

Now that we support remote debugging, putting the remote host name in version control does not make much sense. We want to put _some_ of these values in version control, and others in the user's local state.

By moving the properties to the project we could have some in `.csproj` and others in `.csproj.user`. Longer term we could control them per configuration/target framework/other dimension.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.