Можно ли получить полный путь к файлу класса, в котором находится исходный код, с помощью API coderush?

Я хотел получить полный путь к файлу, когда каретка в visual studio находится в объекте Creation или ссылается на метод какого-то другого класса.

Что-то вроде

Class CurrentClass
{
   Class2 object1=new Class2();

   object1.method1();

}

Могу ли я получить полный путь к файлу, например, c: \ ProjectLocation \ Class2.cs.

Когда я получаю эту строчку в визуальной студии.

Class2 object1=new Class2();

1 ответ

Решение

Вы можете разрешить активное выражение (выражение создания объекта, выражение ссылки на тип, выражение ссылки на метод) и получить имя файла с разрешенным объявлением, используя следующий код:

  Expression activeExpression = CodeRush.Source.Active as Expression;
  if (activeExpression!= null)
  {
    IElement declaration = activeExpression.Resolve(new SourceTreeResolver());
    if (declaration != null)
    {
      string fileName = declaration.FirstFile.Name;
      // use the fileName...
    }
  }
Другие вопросы по тегам