检查相对于解决方案中文件夹的命名空间

本文关键字:命名空间 文件夹 中文 相对于 解决方案 检查 | 更新日期: 2023-09-27 18:35:35

我正在尝试创建一个DiagnosticAnalyzer来检测命名空间声明何时与VS项目中的目录位置不同。

例:

Solution
  - Project
     - ProjectFolder
        - MyClass.cs
namespace Project.ProjectFolder // Good
namespace Project.OtherSubNamespace // Bad, different from the location

我现在面临的问题是从分析器中的当前 SymbolAnalysisContext 中查找源路径(相对于项目)。在代码修复提供程序中,您将使用 Document 类,但我不确定是否可以从SymbolAnalysisContext.

检查相对于解决方案中文件夹的命名空间

使用正在分析的交易品种的 DeclaringSyntaxReferences 属性。

请注意,可能有零个或两个或多个引用。