我想实现一个属性为动态的类,但我似乎不知道该怎么做...
public class myClass
{
public datetime timeStamp { get; set; }
public object variable { get; set; }
public string name { get; set; }
}
例如,我需要读取一个存档,其中的“变量”类型为整数
这仅仅是一个json或我将使用的东西,clas的“ variable”属性(在此示例中)将是一个字符串,但是有时该属性应为整数(example2)
Ex1:
{"name" : "Variable1" , "variable" : "string" : "myString" , "timeStamp" : "852852852" }
Ex2:
{"name" : "Variable2" , "variable" : "int32" : "125125" , "timeStamp" : "852852852" }
答案 0 :(得分:0)
您可以使OPC_UA成为通用类:
class OPC_UA<T>
{
public DateTime TimeStamp { get; set; }
public T Variable { get; set; }
public string Name { get; set; }
}
然后您可以使用反射方法实例化类型:
Type type = Type.GetType("System.Int32");
Type genericizedType = typeof(OPC_UA<>).MakeGenericType(type);
dynamic opc_ua = Activator.CreateInstance(genericType);
opc_ua.Variable = 5; // For example