我遇到了访问嵌套结构体的问题。
namespace Some.NameSpace.ToAccess
{
public struct HowTo
{
public const string Some_Static_Strings = "redudantString";
public const string SomeOtherStatic_Strings = "someOtherRedundantString";
public const string Option3 = SomeOption";
public struct AccessMe
{
public static readonly string OPTION1 = 1.ToString;
public static readonly string OPTION2 = 2.ToString;
public static readonly string OPTION3 = 4.ToString;
public static readonly string OPTION0 = 0.ToString;
static AccessMe()
{
}
}
}
}
我看过其他类似的问题,但我的问题不同之处在于我在运行时加载程序集,而不仅仅是使用反射在运行时获取特定结构体的内容。因此,我在运行时之前没有对我要迭代的库的引用。
这与我的问题非常相似Get struct within struct using reflection,但我不能这样做
FieldInfo FI = typeof(HowTo).GetType().GetField("Collection", BindingFlags.Public | BindingFlags.Instance);
因为我需要先获取类型,但这也不起作用。
var result = _someClass.PreLoadedAssembly.GetType("Some.NameSpace.ToAccess.HowTo").GetField("AccessMe", BindingFlags.Public | BindingFlags.Instance);
< p >(PreLoadedAssembly是我在运行时加载并存储在_someClass中的程序集)< / p >
< p >如果您能提供帮助,那将不胜感激,因为我没有取得太大进展。
谢谢< / p >