我想要做的一类构造函数一个dicionary作为参数,并初始化被列为字典键中的所有类变量,当然后一种类型的转换:我可以使用其他变量访问类变量吗?
public class User
{
public int id;
public string username;
public string password;
public string email;
public int mana_fire;
public int mana_water;
public int mana_earth;
public int mana_life;
public int mana_death;
public User()
{
}
public User(Dictionary<string,string> dataArray){
FieldInfo[] classVariablesInfoList = typeof(User).GetFields();
for(int i = 0; i < classVariablesInfoList.Length; i++)
{
if(dataArray.ContainsKey(classVariablesInfoList[i].Name)){
//missing code here :)
//need something like classVariable= dataArray["classVariablesInfolist[i].name"]; ?
}
}
}
}
,但我可以”找出如何做到这一点! 你能帮忙吗? :)
你可以这样做。但为什么?为什么不直接使用构造函数中定义的所有必需参数访问该字段? –
您可以使用反射来实现这一点。请参阅http://stackoverflow.com/questions/1965635/c-sharp-reflection-changing-the-value-of-a-field-of--variable – Tarik
我想有一个不需要的构造函数当类变量定义更改时更新 – Romeo