1

我正在为 Visual Studio 2012 编写一个包含 ICompletionSourceProvider 的扩展。我需要确定光标所在位置的标识符类型。我尝试了以下方法:

  1. 使用 IClassifierAggregatorService,我能够确定当前单词是标识符,但没有其他信息。
  2. 使用DTE2,我可以在当前位置获得一个CodeElement,但是模型不完整,我能获得的最接近的是当前方法(CodeFunction)

很明显,Visual Studio 有这些信息,但我该如何检索它呢?我只需要它在编辑 C# 文件时工作。

4

1 回答 1

2

Visual Studio 2012 不提供公共 API 来访问此信息。我们有,是的,但你不能得到它。您可能想看看Roslyn CTP,我们正在开发一组 API 来支持与您自己的场景完全一样的场景。

披露:我在 Roslyn 团队。

于 2012-10-09T16:18:50.130 回答