public static Document?GetRoslynDocumentFromVisualStudioDocument(this VisualStudioWorkspace workspace, EnvDTE.Document visualStudioDocument) { if (workspace.CurrentSolution == null) { return(null); } if (visualStudioDocument?.ProjectItem == null) { return(null); } var documentsProject = workspace.GetRoslynProjectFromVisualStudioProject(visualStudioDocument.ProjectItem.ContainingProject); return(documentsProject? .Documents .FirstOrDefault(document => document.FilePath == visualStudioDocument.FullName)); }
public static bool IsCSharpDocument(this EnvDTE.Document visualStudioDocument) { return(visualStudioDocument?.ProjectItem?.FileCodeModel?.Language == CodeModelLanguageConstants.vsCMLanguageCSharp); }