如果我此行的內部工作的理解是正確的:C#getter和setter速記
public int MyInt { get; set; }
然後,它在幕後做這個的:
private int _MyInt { get; set; }
Public int MyInt {
get{return _MyInt;}
set{_MyInt = value;}
}
我真正需要的是:
private bool IsDirty { get; set; }
private int _MyInt { get; set; }
Public int MyInt {
get{return _MyInt;}
set{_MyInt = value; IsDirty = true;}
}
但我想寫這樣的:
private bool IsDirty { get; set; }
public int MyInt { get; set{this = value; IsDirty = true;} }
哪一個不行。事情是我需要做IsDirty的一些對象有幾十個屬性,我希望有一種方法可以使用auto getter/setter,但是當字段被修改時仍然會設置IsDirty。
這是可能的,還是我只需要自己辭職以使我的類中的代碼量增加三倍?
與IronPython的反潛。它在CLR上,但支持面向方面的編程,這就是你所需要的。 :) – bzlm 2011-02-15 21:37:51
如果您使用的是Visual Studio,您可以創建一個代碼片段來幫助您節省時間。 – ebrown 2011-02-15 21:42:18