Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我可以从Roslyn analyzer分析上下文中获取项目路径或属性吗?_C#_Roslyn - Fatal编程技术网

C# 我可以从Roslyn analyzer分析上下文中获取项目路径或属性吗?

C# 我可以从Roslyn analyzer分析上下文中获取项目路径或属性吗?,c#,roslyn,C#,Roslyn,我正在实现一个Roslyn分析器,我想根据csproj中某些属性的设置采取不同的操作 目前,我通过在分析器导入的道具文件中设置“AdditionalFiles”节点来实现这一点。这指向.csproj,然后我手动用xml解析项目文件,查找我关心的属性 <ItemGroup> <AdditionalFiles Include="$(ProjectPath)" /> </ItemGroup> 您是否尝试了context.Optio

我正在实现一个Roslyn分析器,我想根据csproj中某些属性的设置采取不同的操作

目前,我通过在分析器导入的道具文件中设置“AdditionalFiles”节点来实现这一点。这指向.csproj,然后我手动用xml解析项目文件,查找我关心的属性

    <ItemGroup>
      <AdditionalFiles Include="$(ProjectPath)" />
    </ItemGroup>   

您是否尝试了
context.Options.AditionalFiles
collection of
AdditionalText
什么具有属性
Path
或方法
GetText()
?或者只是
context.Project.Documents
        private void AnalyzeAdditionalFiles(CompilationStartAnalysisContext context)
        {
            ICompilationStartAnalysisContextWrapper wrappedContext = this.compilationStartAnalysisContextWrapperFactory.Create(context);

            if (wrappedContext.GetAdditionalTexts()
                              .Any(addtionalFile => <xml parse and validate csproj>))
            {
                context.RegisterSyntaxNodeAction(this.AnalyzeSyntaxNode, PossibleSyntaxKinds);
            }
        }
AnalysisContext.Project.Properties["MyCustomProp"]