c# - 如何使用 roslyn 删除我的 c# 解决方案中的所有源代码注释?

标签 c# roslyn

我想使用 Roslyn 删除我的 C# 解决方案中源代码中的所有注释。 但是我应该怎么做呢?

public void DeleteComment()
{
        var code = File.ReadAllText("code.cs");
        SyntaxTree tree = SyntaxFactory.ParseSyntaxTree(code);
        ///Delete Comments ?

}

最佳答案

只是对@SLaks 回答的一些扩展。您需要扩展 CSharpSyntaxRewriter 并覆盖 VisitTrivia 方法。在这里,您需要检查琐事的 Kind。根据您的需要,您应该过滤单行和多行评论:

trivia.IsKind(SyntaxKind.SingleLineCommentTrivia) || trivia.IsKind(SyntaxKind.MultiLineCommentTrivia)

并返回 default(SyntaxTrivia) 以将它们从树中移除。

关于c# - 如何使用 roslyn 删除我的 c# 解决方案中的所有源代码注释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33850825/

相关文章:

c# - 如何将文本框的文本获取到另一个xaml中的文本 block ?时间:2019-01-17 标签:c#windowsstoreapp

c# - 任何人都可以推荐使用 C# 发送和接收 SMS 的任何基于英国的优秀 SMS 网关吗?

c# - Roslyn:在单个源代码行上枚举精确的标记+琐事跨度?

c# - 如何将 DI 与 UserManager 和 UserStore 结合使用

c# - 如何使用返回类型以List/Array的形式返回结果

c# - 预编译 - 混淆 Roslyn 生成的代码

c# - VSIX-项目 : Unable to get current Workspace due to casting issues

asp.net-web-api - 什么/为什么 Roslyn "needed"在 Asp.Net 的/bin 文件夹中

c# - 如何将掩码文本框中的值插入数据库?

c# - 如何将/features :strict (of csc. exe 的等价物指定给 msbuild.exe 或 .csproj 文件?