Visual Studio 包(或加载项):当插入符号位于属性或方法名称上时获取变量的类信息
本文关键字:方法 获取 类信息 变量 属性 加载项 Studio 插入 于属性 Visual 符号 | 更新日期: 2024-10-30 08:47:41
这是我的第一篇文章,所以请耐心等待。
在过去的几天里,我一直在谷歌上搜索如何做到这一点。
我什至在这里发现了一些似乎相似的东西:
找出游标是否在方法、类或命名空间块内
但我正在寻找的略有不同。
我希望制作一个简单的插件/包,它将带我到接口的第一个具体实现。
因此,给定以下代码:
class Program
{
static void Main(string[] args)
{
var t = new Test();
var testValue = t.Prop1;
}
}
class Test : ITest
{
public string Prop1 { get; set; }
}
public interface ITest
{
string Prop1 { get; set; }
}
假设插入符号 ("|") 位于这一行:"var testValue = t.Pr|op1;"
如何判断属性 Prop1 属于哪个类?
我设置了一个包并添加了尝试获取此信息的项目。 我得到的最接近的是获取当前的CodeElement,这与我上面描述的并不完全相同。 插入符号处的 CodeElement 返回了我的 Program.Main,这不是我要找的。
我也试图找出Edit.GoToDefinition的工作原理(使用反射器)无济于事。
我可以列出我为找出这一点而经历的所有长度,但想让这篇文章保持简短。
感谢您的任何帮助。 这个网站是最好的。
您是否尝试过右键单击,转到定义/转到声明?