Roslyn(又名.NET编译器平台)为开源C#和Visual Basic编译器提供了丰富的代码分析API。它支持使用Visual Studio使用的相同API构建代码分析工具。
roslyn - 如何结合源代码生成器对语法分析器进行单元测试
我能够分别找到测试分析器和源生成器的所有示例。但我的分析器坚持使用源生成器生成的属性。如何将源生成器和语法结合起来
IIncrementalGenerator 未在引用项目中生成代码
我有三个 C# 项目,旨在使用自定义属性来生成引用使用自定义 IIncremental Generator 的公共类的代码。我使用并扩展了来自 dotnet https://www 的本指南。
如何在 Visual Studio 中出现第一个错误后继续视图编译
我正在开发一个包含大量剃刀视图(.cshtml)的.net项目,升级依赖项后我将需要修复很多错误。 有没有办法阻止编译器一开始就停止...
我正在创建自定义 roslyn 分析器,以便在我的项目中强制执行自定义代码样式规则。到目前为止,在 .cs 文件的 AI 生成器的帮助下进展顺利。然而我无法得到ana...
从给定程序集中获取所有引用的程序集(使用 Roslyn 或通过反射)
我正在使用 Roslyn 对解决方案进行一些代码分析,并且该解决方案中的一些项目引用了第 3 方程序集。 有没有办法检索引用的列表
我正在使用 Visual Studio 2015 (v14) 的预览来编写一些 C#,我一直想知道后台编译器实际上是做什么的。根据我的理解,它检查代码编辑的状态......
Roslyn 分析器用于检查 VS2022 中 SQL 文本的语法?
我有许多提交被描述为“SQL 语句中的固定错误”的某种变体。太多愚蠢的错误,例如修改 WHERE 子句并在其中留下额外的 AND 关键字,诸如...
给出以下代码: 公共C类 { 公共无效M() { var x = 5; Action action = y => Console.WriteLine(y); } } 使用VS2013、.NET 4.5。当我看...
从 Roslyn CompilationUnitSyntax 获取嵌套类
我正在使用 Roslyn 解析一些 C# 文件,以生成 TypeScript 类型。 var source = System.IO.File.ReadAllText(pathToCSharpFile); var tree = CSharpSyntaxTree.ParseText(源); var 根...
C# LSP 在使用 OmniSharp 初始化期间出现“消息头必须使用 ':' 分隔键和值”错误
我正在尝试使用 OmniSharp 在 C# 中构建一个玩具语言服务器协议 (LSP) 服务器,但我不断遇到以下错误: 消息头必须使用“:”分隔键和值 这个错误
使用 GeneratorExecutionContext.AddSource 方法时出现错误 RS1035“分析器禁止使用该符号”
Roslyn 源生成器的初学者在这里。 我正在关注 Microsoft 的 Source Generators 文档。我创建了一个 .NET Standard 2.0 类库,并将以下内容设置为内容...
我使用的是 roslyn 分析器,它可以处理对象变量的异步任务装箱,例如: int GetValue() => ... void Print(对象值) => Console.WriteLine(值); 无效主(){ ...
在 Roslyn CP2 中包含 System.Linq 时出现 CompilationErrorException
我已经下载了Roslyn CTP并遇到了以下错误。执行行session.Execute(@"using System.Linq;");时抛出CompilationErrorException;具有以下信息...
看到我们可能会在下一个版本中获得此功能,您认为自己能够做哪些事情或者您想使用此功能做哪些事情? 就个人而言,杜...
在同一解决方案中使用带有依赖项的 SourceGenerator
嗨,我正在尝试编写一个使用 Humanizer 包的 SourceGenerator (该包仅在生成代码时需要,不应在使用
如何检查 roslyn 中的 CSharpCompilation 引用依赖关系(而不尝试发出)?
在Unity中使用roslyn,我创建了一个CSharpCompilation实例。我使用以下代码添加了对实例的 Microsoft.CodeAnalysis.dll 引用 字节 [] 微软代码分析字节 = ...
我是 Roslyn 代码修复的新手,并尝试使用单行注释创建一个格式正确(缩进、换行)的空方法: 前: 公开课Bla { 公共无效Blub() { ...
我正在尝试构建一个增量源生成器,它为依赖注入生成 C# 构造函数。然而,我的生成器似乎生成了 2 个同名 Classes.g.cs 的源。
属于SyntaxToken和SyntaxNode的SyntaxKind列表
我需要属于 SyntaxToken 的 SyntaxKind 的详尽列表,以及属于 SyntaxNode 的 SyntaxKind 列表。原因是因为 SyntaxKind 不仅包含属于 Syntax 的种类...
我有一个带有自定义“代码图”工具窗口的 VS 扩展。它在树视图控件中显示特定的代码元素。树视图节点支持导航到双上的符号定义...