Skip to content

Specify defaults for more/all properties and metadata #11739

Open

Description

In various places in the SDK there are properties and item metadata that has no value (empty space) but the lack of a value also acts the same as one of the values. For example, the <Nullable> property or the <PrivateAssets> metadata on reference items. The blank values are unfriendly from a user experience point of view as users need to know what the default behaviour is and we can't expose these values anywhere in the UI in Visual Studio without double-handling and specifying defaults somewhere in the project system.

These default values would surface in the Properties window in Visual Studio, and the project property pages in Codespaces.

This is what a Reference item looks like in the legacy project system:
image
And this is in SDK-style:
image

As you can see there is a lot of missing information, and reasoning about some of them is hard for users (eg Aliases, or "Specific Version" which is not a version). There is work to do on the CPS side to get the default values to grey out as appropriate, but having the default values in the SDK would be a great start.

Relates to dotnet/project-system#5865
Relates to dotnet/project-system#6212

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions