BSCS-Visu Prog (Serialization)
BSCS-Visu Prog (Serialization)
The object is serialized to a stream, which carries not just the data, but
information about the object's type, such as its version, culture, and assembly
name. From that stream, it can be stored in a database, a file, or memory.
Uses for Serialization
Serialization allows the developer to save the state of an object and recreate it as
needed, providing storage of objects as well as data exchange. Through
serialization, a developer can perform actions like sending the object to a remote
application by means of a Web Service, passing an object from one domain to
another, passing an object through a firewall as an XML string, or maintaining
security or user-specific information across applications.
JSON serialization
JSON serialization serializes the public properties of an object into a string, byte
array, or stream that conforms to the RFC 8259 JSON specification. To control the
way JsonSerializer serializes or deserializes an instance of the class, you can use
one or more of the following approaches:
To serialize an object using binary or XML serialization, you need the object to
serialize, a stream to contain the serialized object, and
a Formatter. System.Runtime.Serialization contains the classes necessary for
serializing and desterilizing objects.
XML Serialization
XML serialization serializes the public fields and properties of an object, or the
parameters and return values of methods, into an XML stream that conforms to a
specific XML Schema definition language (XSD) document. XML serialization
results in strongly typed classes with public properties and fields that are
converted to XML. System.Xml.Serialization contains the classes necessary for
serializing and desterilizing XML.
Binary and XML serialization can be performed in two ways, basic and custom.
Basic serialization uses .NET to automatically serialize the object.
The only requirement in basic serialization is that the object has the Serializable
Attribute attribute applied. The NonSerializedAttribute can be used to keep
specific fields from being serialized.
When you use basic serialization, the versioning of objects may create problems,
in which case custom serialization may be preferable. Basic serialization is the
easiest way to perform serialization, but it does not provide much control over
the process.
Designer Serialization