Получить полное строковое представление объекта (например, в окне Immediate Window в Visual Studio)

Учитывая следующий пример класса:

public class MyClass
{
    public string S { get; set; }
    public int I { get; set; }
    public DateTime D { get; set; }
    private float F { get; set; }
    private long l;

    public MyClass()
    {
        S = "foo";
        I = 42;
        D = new DateTime(2011, 11, 11);
        F = 3.14f;
        l = 12435;
    }
}

Если у меня в моем приложении есть экземпляр myClass этого класса, выполните код в режиме отладки (Visual Studio 2010) и в некоторые типы точек myClass в окне Immediate Window отображаются следующим образом:

{MyClass}
    D: {11.11.2011 00:00:00}
    F: 3.14
    I: 42
    l: 12435
    S: "foo"

Получение такого строкового представления объекта и всех его значений может быть очень полезно для целей регистрации. Есть ли простой и приятный способ добиться этого?

Я думаю, что Immediate Window использует отражение для цикла по всем полям и свойствам, но я подумал, что спрошу на всякий случай, если уже существует какая-то служебная функция или что-нибудь для этого .

13
задан Julian 14 July 2011 в 14:47
поделиться