namespace ObjectPropertyDisplayer
public static class ObjectDisplayer
public static void Main()
Console.WriteLine(DisplayObjectInfo(new DateTime()));
private static string DisplayObjectInfo(Object o)
var sb = new StringBuilder();
sb.Append("Type: " + type.Name);
sb.Append("\r\n\r\nFields:");
var fields = type.GetFields();
foreach (var fieldInfo in fields)
sb.Append("\r\n " + fieldInfo + " = " + fieldInfo.GetValue(o));
sb.Append("\r\n\r\nProperties:");
var properties = type.GetProperties();
if (properties.Length > 0)
foreach (var propertyInfo in properties)
sb.Append("\r\n " + propertyInfo + " = " + propertyInfo.GetValue(o, null));
Console.WriteLine(ex.Message);