This disclosure relates generally to systems and methods for dynamically serializing a data format used to return data objects, more particularly, to network-based systems and methods for dynamically serializing C Sharp (C#) data format during runtime of the data objects.
To communicate and transfer data between computing devices, computer systems use various protocols and message formats. JavaScript Object Notation, otherwise known as JSON, is an open standard data format that is computer language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, or the like. The JSON computer language defines a set of rules for encoding documents in a format which is both human-readable and writeable and machine-readable and writeable. JSON data may be transmitted between computers using any type of data transmission media. JSON data may be processed using computer programs and other suitably configured applications.
Some known systems use Representational State Transfer (REST) servers to build web services that are light weight, maintainable, and scalable. These web services are also known as RESTful services. When complex JSON data (e.g., JSON strings) has to be transmitted between RESTful services, the JSON data is wrapped into a JSON class. However, in order to deserialize a JSON class to a C# class, a C# class has to pre-exist for a type of data object that it is desired to be deserialized. Because the attribute name of each type of data object is different depending on the web method that returns the attribute name, multiple definitions of the same C# class are required for deserializing the same data object type from different web methods. The creation of multiple definitions of the same C# class make maintenance and updates of C# classes extremely computationally intensive and time consuming.