【发布时间】:2019-04-02 17:21:44
【问题描述】:
我正在实现一些动态的东西,不需要每次添加功能时都添加 X 行代码
我有不同类别的不同列表
我可以通过做访问我想要的东西
List<AutoPath> temp = (List<AutoPath>)typeof(QuestActions).GetProperty("autoPath").GetValue(Quests.Actions, null);
太好了,我可以通过名称访问不同类中的 List<> 并获取/更改内容
但现在我想把它和GetType()结合起来
Type t = Type.GetType("ChineeseRevolution.Actions.AutoPath");
我试过了
Type t = Type.GetType("ChineeseRevolution.Actions.AutoPath");
List<t> temp = (List<t>)typeof(QuestActions).GetProperty("autoPath").GetValue(Quests.Actions, null);
但它不让我
在运行时
总结一下:
- 我在另一个班级有一个公共List<> 的名字
- 我想用它的名字修改那个类的任何列表
【问题讨论】:
-
或者似乎每次添加X行代码会更快更简单;)
-
你不能声明一个 variable 是“一些我在运行时才知道的 specific 类型”。您当然可以将其声明为
object或dynamic但当然您会失去智能感知等。 -
我不同意建议的欺骗,因为这里的 OP 似乎试图获取 现有 列表,而不是创建一个新列表。
标签: c#