2015-02-10 51 views
0

我序列化的数据类型为XML属性,并抛出一个异常:序列化衍生只读

System.Runtime.Serialization.InvalidDataContractException 

德国的错误信息是:

Es ist keine "set"-Methode für die "DerivedProperty"-Eigenschaft im Typ "MyApp.Models.MyEntry" implementiert. 

大致翻译,它告诉我在序列化期间发生错误,因为我的只读属性“DerivedProperty”没有“set”方法。但是我不会实现一个set方法,因为它是一个只读属性,MyEntry是一个仅用于序列化的模型(服务器上没有反序列化),可能是因为我非常固执并且讨厌这样糟糕的“解决方案”。

如何告诉.NET我的属性是只读的和/或我的模型是仅序列化的,所以异常消失?我的代码是:

[DataContract] 
public class MyEntry { 
    internal string Property = null; 
    [DataMember] 
    public bool DerivedProperty { 
     get { 
      return Property == null; 
     } 
    } 
} 

回答