Когда использовать атрибуты DataContract и DataMember?

Меня очень смущает атрибут DataContract в WCF. Насколько мне известно, он используется для сериализации пользовательского типа, такого как классы. Я написал один класс, который отображается на стороне клиента вот так.

[DataContract]
public class Contact
{
    [DataMember]
    public int Roll { get; set; }

    [DataMember]
    public string Name { get; set; }

    [DataMember]
    public string Address { get; set; }

    [DataMember]
    public int Age { get; set; }
}

Он работает правильно, но когда я удаляю DataContract и DataMember , он также работает правильно. Я не могу понять, почему он работает правильно. Может ли кто-нибудь сказать мне, как на самом деле используется DataContract ?

Мой контракт на обслуживание выглядит так

[ServiceContract]    
public interface IRestServiceImpl
{
    [OperationContract]        
    Contact XmlData(string id);      
}
171
задан Ignacio Soler Garcia 23 September 2015 в 07:19
поделиться