src/Microsoft.VisualStudio.ProjectSystem.Managed/ProjectSystem/Configuration/BaseProjectConfigurationDimensionProvider.cs
/// <summary>
/// Gets the project configuration dimension and values represented by this provider for the given unconfigured project.
/// </summary>
/// <param name="unconfiguredProject">Unconfigured project.</param>
/// <returns>Collection of key/value pairs for the current values for the configuration dimensions of this provider for given project.</returns>
/// <remarks>
/// From <see cref="IProjectConfigurationDimensionsProvider"/>.
/// The interface expectes a collection of key/value pairs containing one or more dimensions along with the values for each
/// dimension. In this implementation each provider is representing a single dimension with one or more values.
/// </remarks>
Gets the project configuration dimension and values represented by this provider for the given unconfigured project.
Gets the project configuration dimension and values represented by this provider for the given unconfigured project .
public virtual async Task<IEnumerable<KeyValuePair<string, IEnumerable<string>>>> GetProjectConfigurationDimensionsAsync(UnconfiguredProject unconfiguredProject)
        {
            Requires.NotNull(unconfiguredProject, nameof(unconfiguredProject));
            var values = await GetOrderedPropertyValuesAsync(unconfiguredProject).ConfigureAwait(false);
            if (values.IsEmpty)
            {
                return ImmutableArray<KeyValuePair<string, IEnumerable<string>>>.Empty;
            }
            else
            {
                var dimensionValues = ImmutableArray.CreateBuilder<KeyValuePair<string, IEnumerable<string>>>();
                dimensionValues.Add(new KeyValuePair<string, IEnumerable<string>>(DimensionName, values));
                return dimensionValues.ToImmutable();
            }
        }
public virtual async Task < IEnumerable < KeyValuePair < string , IEnumerable < string > > > > GetProjectConfigurationDimensionsAsync ( UnconfiguredProject unconfiguredProject ) { Requires . NotNull ( unconfiguredProject , nameof ( unconfiguredProject ) ) ; var values = await GetOrderedPropertyValuesAsync ( unconfiguredProject ) . ConfigureAwait ( false ) ; if ( values . IsEmpty ) { return ImmutableArray < KeyValuePair < string , IEnumerable < string > > > . Empty ; } else { var dimensionValues = ImmutableArray . CreateBuilder < KeyValuePair < string , IEnumerable < string > > > ( ) ; dimensionValues . Add ( new KeyValuePair < string , IEnumerable < string > > ( DimensionName , values ) ) ; return dimensionValues . ToImmutable ( ) ; } }
Gets the project configuration dimension and values represented by this provider for the given unconfigured project.
Gets the project configuration dimension and values represented by this provider for the given unconfigured project .
Collection of key/value pairs for the current values for the configuration dimensions of this provider for given project.
Collection of key / value pairs for the current values for the configuration dimensions of this provider for given project .
unconfiguredProject
UnconfiguredProject
None
remarks
From .
The interface expectes a collection of key/value pairs containing one or more dimensions along with the values for each
dimension. In this implementation each provider is representing a single dimension with one or more values.
From . The interface expectes a collection of key / value pairs containing one or more dimensions along with the values for each dimension . In this implementation each provider is representing a single dimension with one or more values .