Posso criar uma propriedade automática (nenhum membro privado) com código get e se

Em c #, eu posso fazer isso:

public int Foo { get; set; }

Que é bom. Mas assim que eu quiser fazer alguma coisa no getter ou no setter, preciso alterá-lo para este:

private int foo;
public int Foo {
    get { return foo; }
    set {
        foo = value;
        DoSomething();  // all that other code, just to add this line!
    }
}

É possível evitar isso? Gostaria muito de poder fazer algo assim:

public int Foo {
    get;
    set {           
       DoSomething();
    }
}

Quão perto posso chegar do acima?

questionAnswers(4)

yourAnswerToTheQuestion