问题标签 [roslyn-code-analysis]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 防止对打开的解决方案的每个文件执行语法树操作
我有一个代码分析器,其操作注册到语法树解析:
问题是当打开一个解决方案时,它是针对解决方案的每个 (*.cs) 文件执行的。由于该HandleSyntaxTree()
方法调用了 Git 的命令行进程,因此对于大型解决方案,这会变得非常慢。
有没有办法HandleSyntaxTree()
只为在编辑器中打开的文件调用?
编辑: HandleSyntaxTree() 方法的半伪代码
c# - 如何使用 Roslyn 获取 C# 项目中使用的各种类型
我正在分析将现有的 C# 库转换为 java。首先,我需要知道现有 C# 库中使用的类型/内置关键字是什么。我的意思是,例如
在这个类中,使用的类型/关键字是,
- 上市
- 整数
- 漂浮
- 安慰
- 细绳
我的问题是,
- 有没有办法做到这一点。我希望我能和罗斯林一起做这件事。但是我们可以获得变量的“LocalDeclarationStatementSyntax”。但是如何解析“Console”和“Concat”。解析类中所有标记的“Sytax walker”是唯一的选择吗?
- 还有如何使用 Roslyn 从项目文件中获取所有类?
c# - Roslyn 找不到 IDictionary.Add 接口实现成员
为什么以下示例中的 Roslyn 在 Dictionary 类型中找不到 IDictionary.Add 接口成员实现?
IDictionary.Add 和 Dictionary.Add 由 Roslyn 正确解析,但后来我在 Dictionary 类型中找不到实现 IDictionary.Add 方法。
更新 我用正确的代码添加了第二个代码示例。
VS2015,罗斯林 1.1.1:
固定示例:
c# - 执行代码修复后如何将插入符号移动到特定位置
执行代码修复后是否可以将插入符号移动到特定位置?
想象以下场景: - 在我正在编辑的源代码的开头附近,我的代码分析器检测到一个错误并用红色曲线突出显示 - 我正在编辑文件,因此突出显示的错误超出了显示范围 - 使用鼠标轮子,我遇到了上述错误 - 将曲线悬停后,出现错误弹出窗口并显示建议的代码修复 - 执行后,编辑器视图返回插入符号位置 - 我无法立即看到代码修复的结果
解决方案是将插入符号位置移动到发生代码修复的位置。但是我似乎找不到方法。
c# - 如何在类或部分类文件中找到 Roslyn 中方法的所有签名(重载)?
通过 Roslyn,C# 语法,我有 IMethodSymbol 来澄清我的方法信息,
符号:容器类可能有部分类,其中包括该方法的一些签名
c# - 使用 Roslyn 以编程方式编译源代码
所以我一直在尝试用 Roslyn 以编程方式编译一段代码。由于某些原因,我添加的引用并没有出现在 Compilation 类中。因此,当我在使用“AddReferences”后查看引用的程序集时,列表为空。因此,当我尝试发射时,我得到诊断中未定义的“对象”。谁能指出我的问题?
c# - 如何获取 C# 类中使用的所有系统类型或内置类型
我正在尝试列出 C# 类中使用的所有系统类型。例如,
这里我要列举,
- 整数32
- 安慰
- 空白
- 集会
- 漂浮
- 双倍的
- 细绳
这个怎么做?
c# - Roslyn Analyzer 不能处理项目中的多个文件
好的,我在一个项目中运行了这个分析器:
在项目中有多个文件之前,一切都运行良好。例如,对于项目中的两个文件,可以正确识别诊断,但未显示诊断。
任何想法 ?
c# - 从命令行调用 Roslyn 分析器
在 Visual Studio 2015 中进行开发时使用 Roslyn 分析器非常棒。但是,如果能够从预提交挂钩或像 TeamCity 这样的 CI 调用分析器,以确保标记不符合要求的代码,那就更好了。
有什么方法可以通过调用命令行实用程序来获取分析器的结果,还是需要定制?
visual-studio - 什么是 ReSharper 的“StyleCop 兼容性”?
我目前正在进行研究以完成我的组织向 VS 2015 的迁移,包括实施 StyleCop.Analyzers、更新 ReSharper 设置并将其签入源代码控制等。
我经常遇到的一个话题是 StyleCop 和 ReSharper 之间的“兼容性”。Jet Brains 开发人员甚至分叉了经典的 StyleCop,以使其与 ReSharper 9 “兼容”。
这里的“兼容”是什么意思?是像让 ReSharper 的所有默认代码分析设置与 StyleCop 中的设置匹配一样简单,还是更复杂?
我们的升级/更改包括:
- Visual Studio 2010 到 2015
- ReSharper 8 到 10
- StyleCop 经典到 StyleCop.Analyzers
...所以我只想确保我的基地被覆盖。