【发布时间】:2009-04-30 06:33:30
【问题描述】:
我在 silverlight 和 WCF 服务之间移动的数据相当有限。所以我建立了一些数据合同。我希望能够使用相同的类在客户端进行一些有限的数据验证,而不需要 DTO 和其他东西的开销。
我有这样的合同:
[DataContract]
class MyObject
{
private String _id;
[DataMember]
public String ID
{
get
{
return _id;
}
set
{
_id = value;
DoStuff();
}
}
现在,当我反序列化对象时,setter 将运行。这将设置私有变量 _id,这很好。但我不希望 DoStuff() 在反序列化时运行。
我曾希望使用 [OnDeserializing] 和 [OnDeserialized] 属性。我可以定义一个 bool 标志,我可以用它来控制在 setter 中运行的内容。这实际上适用于服务器端,但 Silverlight 没有这些属性。
有什么建议吗?
【问题讨论】:
标签: silverlight