Исходный код вики Использование

Редактировал(а) Alexandr Fokin 2023/07/02 10:54

Последние авторы
1 {{code language="c#"}}
2 //Nuget:
3 //Microsoft.CodeAnalysis
4 //Microsoft.CodeAnalysis.Common
5 //Microsoft.CodeAnalysis.Workspaces.Common
6 //Microsoft.CodeAnalysis.Workspaces.MSBuild
7 //Microsoft.Build.Locator
8
9 MSBuildLocator.RegisterDefaults();
10
11 using (var msWorkspace = MSBuildWorkspace.Create())
12 {
13 msWorkspace.WorkspaceFailed += (object sender, WorkspaceDiagnosticEventArgs e) =>
14 {
15 //loadSolutionError = e;
16 //Error handler
17 };
18
19 var solution = await msWorkspace.OpenSolutionAsync(solutionPath);
20 var projects = solution.Projects;
21
22 // ...
23 }
24
25 {{/code}}
26
27
28 * Для исследования кода можно использовать либо Visitor (CSharpSyntaxRewriter), либо получение списка всех синтаксических выражений в документе.
29 * Для использования механизма поиска ссылок используется класс Microsoft.CodeAnalysis.FindSymbols.SymbolFinder.
30
31 DustinCampbell/using-msbuildworkspace.md
32 https://gist.github.com/DustinCampbell/32cd69d04ea1c08a16ae5c4cd21dd3a3