C#模型封装与可序列化

时间:2014-08-05 15:27:30

标签: c# encapsulation datacontract data-members

我正在使用serializable,但不能离开我的私人课程。

[DataContract]
public class test
{
    [DataMember]
    public String name { get; set; }
}

在公开场合留下什么问题。

我不理解这种封装,因为我不能这样使用它。

[DataContract]
public class test
{
    [DataMember]
    private int myVar;

    public int MyProperty
    {
        get { return myVar; }
        set { myVar = value; }
    }
}

1 个答案:

答案 0 :(得分:0)

数据合同是公开的。双方之间的合同。另一方甚至可能没有与您相同的内部代表。只要履行公共合同,它就会奏效。

如果您想自己序列化对象,可以使用其他方法,例如为XmlSerialization实现IXmlSerializable

相关问题