我的模型有一系列的 setter 和 getter。一些 setter 调用依赖于其他属性的方法。这很好用,因为在代码中构造对象时,我控制设置属性的顺序。但是,在序列化/反序列化期间,我遇到了一个问题,即在实际设置 property1 之前运行的 setter 还调用了依赖于另一个属性(例如 property1)的方法。
有没有办法控制使用反序列化时调用属性设置器的顺序System.Web.Script.Serialization.JavaScriptSerializer
?
public class MyClass
{
public String[] Property1 { get; set; }
private String[] _property2;
public string[] Property2
{
get { return _property2; }
set { _property2 = value; UpdateSomething(); UpdateSomething(); RaisePropertyChanged("Property2"); }
}
public void UpdateSomething()
{
Debug.Assert(Property1.Length == Property2.Length); <!--When deserializing, need Property1 set before property2 to avoid issues
}
}
谢谢