找出一个类型是否被引用,因此可能在某个时间点被加载

本文关键字:加载 时间 引用 一个 是否 类型 | 更新日期: 2023-09-27 18:03:09

我应该知道的,但是好像记不住了。

如何发现一个类型是否在程序集中被使用(而不仅仅是它存在于程序集中,这是简单的部分)。

class Dog { }
class Cat { }
class Rat { }
public object GetAnimal()
{
  if (today.Is(DayOfWeek.Monday))
  {
    return new Dog();
  }
  else
  {
    return new Cat();
  }
}

我希望猫和狗都显示出来,因为它们可能会在某个时候被加载,但由于鼠没有被使用,我不希望它显示在我的结果中

找出一个类型是否被引用,因此可能在某个时间点被加载

所以要清楚的问题是,你如何发现一个类是否在当前项目的某个地方使用,这是一个项目,你有源代码?

假设你正在使用Visual Studio,最简单的事情就是加载该项目(不是整个多项目解决方案),然后右键单击类名并选择"查找所有引用"(Shift + F12)。结果将显示项目中使用类的每个位置。在您的情况下,如果结果> 1,那么类在项目中的某个地方使用。

在您的示例中,Rat类在搜索结果中只有一个条目。Cat和Dog类将有两个结果。