我有一个字符串数组,就像这样:
namespace DynamicCore
{
public class DynamicCode
{
List<Variable> variableList = new List<Variable>();
public DynamicCode()
{
Variable Variable = new Variable();
Variable.ID = "Variable_26545789";
Variable.Type = 1;
variableList.Add(Variable);
Variable = new Variable();
Variable.ID = "Variable_vdvd3679";
Variable.Type = 2;
variableList.Add(Variable);
}
}
}
我编译了这个数组并将其存储到内存中。通过以下代码,我获取
variableList
:string name = "DynamicCore.DynamicCode";
Type type = results.CompiledAssembly.GetType(name, true);
object instance = Activator.CreateInstance(type);
FieldInfo filed = type.GetField("variableList",
BindingFlags.Instance |
BindingFlags.NonPublic);
我尝试将filed
(variableList
)转换为List<Variable>
,代码如下:
List<Variable> Variables = (List<Variable>)filed;
但是我遇到了这个错误:
Cannot convert type 'System.Reflection.FieldInfo' to 'System.Collections.Generic.List<Variable>'
如果有人能够解释这个问题的解决方案,那将非常有帮助。