dotnet / dotnet/project-system
Simplify property dimensional configuration
- Dominant language
- C#
- Stars
- 1k
- Forks
- 415
- PR merge metrics
- No merged PRs in 30d
Description
## Summary
When setting a value for any subset of the possible varied dimensions, we default to setting the entire dimensional configuration in the project file.
For example, setting the debug and release values for the trimming property:

sets all 4 dimensional configurations associated with each

Instead, we should default to creating/adding the property value to a propertygroup with the least required dimensions. For the above example, setting the Debug value should create a propertygroup with the condition `'$(Configuration)'=='Debug'`.
Note that there is additional complexity when properties with different numbers of dimensions are set. For example,
```
Value
```
If trying to set the Debug value for property Property2, that is only varied by configuration, should create a new property group if one doesn't exist for this condition.
```
Value2
```
Contributor guide
Assessment
This issue has not been assessed yet.