You are developing an application. The application converts a Location object to a string by using a method named WriteObject. The WriteObject() method accepts two parameters, a Location object and an XmlObjectSerializer object.
The application includes the following code. (Line numbers are included for reference only.)
You need to serialize the Location object as a JSON object.
Which code segment should you insert at line 20?
A. New DataContractSerializer(typeof(Location))
B. New XmlSerializer(typeof(Location))
C. New NetDataContractSenalizer()
D. New DataContractJsonSerializer(typeof(Location))
System.Object
System.Runtime.Serialization.XmlObjectSerializer
System.Runtime.Serialization.DataContractSerializer
System.Runtime.Serialization.Json.DataContractJsonSerializer
System.Runtime.Serialization.NetDataContractSerializer
Use the DataContractSerializer/DataContractJsonSerializer class to serialize and deserialize instances of a type into an XML/JSON stream or document.
The NetDataContractSerializer differs from the DataContractSerializer in one important way: the NetDataContractSerializer includes CLR type information in the serialized XML, whereas the DataContractSerializer does not. Therefore, the NetDataContractSerializer can be used only if both the serializing and deserializing ends share the same CLR types.
System.Object
System.Xml.Serialization.XmlSerializer
has to be D
A
[DataContract] and [DataMember] used for DataContractSerializer (xml format) and DataContractJsonSerializer (json format). Both implement XmlObjectSerializer (DataContractJsonSerializer too).