Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
 }