private static string GetProjectMetadataValue(LegacyCSProjProjectReference item, string metadataElement) { if (item == null) { throw new ArgumentNullException(nameof(item)); } if (string.IsNullOrEmpty(metadataElement)) { throw new ArgumentNullException(nameof(metadataElement)); } if (item.MetadataElements == null || item.MetadataValues == null) { return(String.Empty); // no metadata for project } var index = Array.IndexOf(item.MetadataElements, metadataElement); if (index >= 0) { return(item.MetadataValues.GetValue(index) as string); } return(string.Empty); }
private static ProjectRestoreReference ToProjectRestoreReference(LegacyCSProjProjectReference item) { var reference = new ProjectRestoreReference() { ProjectUniqueName = item.UniqueName, ProjectPath = item.UniqueName }; MSBuildRestoreUtility.ApplyIncludeFlags( reference, GetProjectMetadataValue(item, _includeAssets), GetProjectMetadataValue(item, _excludeAssets), GetProjectMetadataValue(item, _privateAssets)); return(reference); }