拥有"用户类"在我的C#项目中我希望将所有变量存储在一个文本文件中 - 一切顺利,直到我来到一个"做"包含在用户类中的列表。 User类还包含几个列表
所以问题是,我如何遍历对象中的所有变量,以及所包含列表中的所有变量?
到目前为止我得到的代码:
StreamWriter File = new StreamWriter(Sökväg);
var props = this.GetType().GetProperties();
foreach (var prop in props)
{
object value = prop.GetValue(this, null); // against prop.Name
if (value != null)
{
switch (prop.PropertyType.ToString())
{
case "System.String":
case "System.Int16":
case "System.Int32":
case "System.Int64":
case "System.DateTime":
case "System.Boolean":
File.WriteLine(prop.Name + "|" + value.ToString());
break;
default:
MessageBox.Show("Property type not supported" +
Environment.NewLine + prop.Name);
break;
}
}
}
File.Close();
答案 0 :(得分:0)
在生产环境中,反射是一件非常昂贵的事情。话虽如此,您首先要将第一行和最后一行之间的所有代码重构为新方法。然后,您可以为列表添加其他case语句并迭代元素,并递归调用重构的原始方法。