我正在探索为 ReSharper / Rider 编写插件。按照文档的示例,我正在为 ReSharper 构建一个上下文操作。
这是上下文动作,它还没有做太多:
[ContextAction
(
Name = "New context action",
Description = "Some description...",
Group = "C#",
Disabled = false,
Priority = 1
)]
public sealed class NewContextAction : ContextActionBase
{
public override string Text => "New context action";
public NewContextAction(LanguageIndependentContextActionDataProvider dataProvider)
{
var selectedTreeNode = dataProvider.GetSelectedElement<ITreeNode>();
// --> How can I get a reference to the type?
}
...
}
每当我单击源代码中的某些内容(如上图所示的类型)时,都会调用上下文操作类的构造函数。我可以访问名称,ITreeNode
但我不知道如何从树表示移动到 ReSharper 使用的实际类型表示。
问题
如何获取对用户单击的类型 ( IType
, ...) 的引用?IDeclaredType