访问可能无法使用的第三方类

Abd*_*lla 4 c# class

我需要访问可能可用或可能不可用的第三方类.我们怎么能处理这样的情况呢?

例如:

ClassPartyClass类可能可用,也可能不可用.它有一个静态变量myInt.

int someInt;
if(ThirdPartyClass is available) // pseudo-code
{
  someInt = ThirdPartyClass.myInt;
} else {
  someInt = 0;
}
Run Code Online (Sandbox Code Playgroud)

dri*_*iis 6

你基本上是在谈论反思.我假设我们不需要尝试自动发现程序集.

你可以这样做:

Type t = Type.GetType("<fullyqualifiedname>.ThirdPartyClass", false)
if (t != null) 
{
    FieldInfo fi = t.GetField("myInt", BindingFlags.Public | BindingFlags.Static);
    someInt = (int)fi.GetValue(null);
}
else
    someInt = 0;
Run Code Online (Sandbox Code Playgroud)