public static async Task <HashSet <string> > GetAllNamespacesAsync( this VisualStudioWorkspace workspace ) { if (workspace is null) { throw new ArgumentNullException(nameof(workspace)); } var typeDict = await workspace.GetAllTypesInNamespaceRecursivelyAsync(null); var allSolutionNamespaces = typeDict.Values.Select(t => t.ContainingNamespace.ToDisplayString()).ToHashSet(); return(allSolutionNamespaces); }