Я знаю, что могу сделать это с голым XML, но мне любопытно, позволит ли Рослин мне это сделать.
Мой текущий код:
MSBuildLocator.RegisterDefaults();
using (var workspace = MSBuildWorkspace.Create())
{
workspace.LoadMetadataForReferencedProjects = true;
var solution = await workspace.OpenSolutionAsync(solutionFile);
foreach (var project in solution.Projects)
{
foreach (var csFile in project.Documents.Where(o => o.SupportsSyntaxTree && o.Name.EndsWith(".cs")))
{
// Do some per cs file processing
}
// I want to check the imports and if the one I need is missing - add it.
}
}
Как я могу извлечь информацию об импорте? Желательно с позициями FullSpan, чтобы я мог удобно редактировать исходный файл.