private ProjectType ParseProjectType() { var sdkAttribute = ProjectContents?.Attributes().FirstOrDefault(a => _SdkAttributeName.Equals(a.Name.LocalName, StringComparison.OrdinalIgnoreCase)); if (_WebSdk.Equals(sdkAttribute?.Value, StringComparison.OrdinalIgnoreCase)) { var isPackable = GetPropertyValue(_IsPackablePropertyName, raw: false); var isPackableValue = "true"; if (isPackableValue.Equals(isPackable, StringComparison.OrdinalIgnoreCase)) { return(ProjectType.Assembly); } return(ProjectType.WebApplication); } var outputType = GetPropertyValue(_OutputTypeTagName, raw: false); if (_ConsoleApplicationOutputType.Equals(outputType?.Trim(), StringComparison.OrdinalIgnoreCase)) { return(ProjectType.ConsoleApplication); } if (PackageReferences.Any(r => r.Name == _TestsIdentifierPackageName)) { var isPackable = GetPropertyValue(_IsPackablePropertyName, raw: false); var notPackableValue = "false"; if (notPackableValue.Equals(isPackable, StringComparison.OrdinalIgnoreCase)) { return(ProjectType.Tests); } } return(ProjectType.Assembly); }
public string GetName() { var currentLocaleName = Thread.CurrentThread.CurrentCulture.Name; var currentLocaleContent = ProjectContents.FirstOrDefault(pc => pc.Locale == currentLocaleName); if (currentLocaleContent != null) { return(currentLocaleContent.Name); } var enUsContent = ProjectContents.FirstOrDefault(pc => pc.Locale == "en-US" && pc.IsUpdated); if (enUsContent != null) { return(enUsContent.Name); } return(ProjectContents.FirstOrDefault(pc => pc.IsUpdated)?.Name ?? "-"); }
public ProjectExplorerRenderer(ProjectContents projectContents, IEnumerable <string> referencingProjects) { this.projectContents = projectContents; this.referencingProjects = referencingProjects.OrderBy(s => s, StringComparer.OrdinalIgnoreCase); }