因此,我正在尝试为Discord机器人设置一个自我更新的帮助命令,这就是您所需要了解的一切。
要专门从命令中获取数据,它们都从我的基类ModuleArchetype派生而来,而我正在使用Reflection获取在此自动更新列表中使用的所有命令数据的列表。
这里的魔术目标是访问我在每个命令模块中拥有的每个可爱构造函数中的数据。
static Banana()
{
Alias = "banana";
Summary = "bananas are cool";
}
我已经能够成功检查Type是否继承ModuleArchetype。
List<ModuleArchetype> Output = new List<ModuleArchetype>; //Modules to return
var TypeList = Assembly.GetExecutingAssembly().GetTypes();
foreach(Type t in TypeList)
{
if(t.IsSubclassOf(typeof(ModuleArchetype)))
{
Console.WriteLine(t.Name); //to verify the check is working
Output.Add(); //the issue
}
}
但...
Output.Add(t); //Obviously doesn't work
Output.Add((ModuleArchetype)t); //Nope, doesn't work
Output.Add(t as ModuleArchetype); //Nope
如何将这种类型转换成列表可以很好地使用的形式?
呼如林
慕妹3242003
相关分类