[英]Set default value in a DataContract?
如何為DataMember設置默認值,例如下面顯示的值:
我想默認設置ScanDevice =“XeroxScan”
[DataMember]
public string ScanDevice { get; set; }
我通常用這樣的模式做到這一點:
[DataContract]
public class MyClass
{
[DataMember]
public string ScanDevice { get; set; }
public MyClass()
{
SetDefaults();
}
[OnDeserializing]
private void OnDeserializing(StreamingContext context)
{
SetDefaults();
}
private void SetDefaults()
{
ScanDevice = "XeroxScan";
}
}
不要忘記OnDeserializing,因為在反序列化期間不會調用構造函數。
如果您希望它始終默認為XeroxScan,為什么不做一些簡單的事情:
[DataMember(EmitDefaultValue = false)]
public string ScanDevice= "XeroxScan";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.