我在 MonoTouch-Application 中遇到了我的一个属性的奇怪行为。貌似给定的值不能通过Property返回,但是MonoDevelop中的Debugger说后台的私有字段居然持有值??
这是该属性的实现方式:
public int? Status
{
get { return this._status; }
internal set
{
if (this._status != value)
{
// Status hat sich geändert, darum Speichervorgang nötig
this._mustBeSaved = true;
this._status = value;
this.NotifyPropertyChanged("Status");
}
}
}
在这里你可以看到调试器说什么:
反射值(“值”)如何保持正确的值,而反射字段“has_value”表示它没有立即保持任何值?因此,无法从属性中获取值。
(这个和我的其他属性的唯一区别是这个属性可以为空)