public class ObjectWriter
{
public static string GetObjectString(object obj)
{
StringBuilder sb = new StringBuilder(1024);
sb.Append("Type: ");
sb.AppendLine(obj.GetType().ToString());
if (obj == null)
{
sb.AppendLine("Value: Null");
}
else
{
sb.AppendLine("-------------------------");
var type = obj.GetType();
foreach (var prop in type.GetProperties())
{
var val = prop.GetValue(obj, new object[] { });
var valStr = val == null ? "" : val.ToString();
sb.AppendLine(prop.Name + ":" + valStr);
}
}
return sb.ToString();
}
}