A datacontract is a formal agreement between a client and service that abstractly describes the data to be exchanged. In WCF, the most common way of serialization is to make the type with the datacontract attribute and each member as datamember.Click to see full answer. People also ask, what is DataContract in WCF? WCF Data Contract In Windows Communication Foundation, Data Contract is an agreement between parties (i.e., a service and a client) that describes what type of data will be exchanged between them? We can control the contents (i.e. Payload data or message body) of a SOAP message using Data Contract.One may also ask, why DataContract is used in WCF? WCF uses a serialization engine called the Data Contract Serializer by default to serialize and deserialize data. We can also explicitly create a data contract by using DataContractAttribute and DataMemberAttribute attributes. This attribute can be applied to classes, structures, and enumerations. Similarly, what is DataMember in C#? Data Member attribute. Data Member are the fields or properties of your Data Contract class. You must specify [DataMember] attribute on the property or the field of your Data Contract class to identify it as a Data Member.Is DataContract mandatory in WCF?3 Answers. No, the DataContractAttribute is not required – WCF will infer serialization rules. You must decorate your classes with a DataContract and DataMember attributes to be used in a WCF service.