/// <summary> /// Checks if a given item is a well-known reference that can be converted to PackageReference. /// </summary> public static bool IsReferenceConvertibleToPackageReference(ProjectItemElement item) => MSBuildFacts.DefaultItemsThatHavePackageEquivalents.ContainsKey(item.Include) || DevExpressFacts.IsReferenceConvertibleToPackageReference(item.Include);
/// <summary> /// Determines if a given project is a WinForms project by looking at its references. /// </summary> public static bool IsWinForms(IProjectRootElement projectRoot) { var references = projectRoot.ItemGroups.SelectMany(GetReferences)?.Select(elem => elem.Include.Split(',').First()); if (references is null) { return(false); } else { return(DesktopFacts.KnownWinFormsReferences.Any(reference => references.Contains(reference, StringComparer.OrdinalIgnoreCase)) || references.Any(x => DevExpressFacts.IsDevExpressWpf(x))); } }