This course equips viewers with essential knowledge about serialization in the .NET Framework. No matter what .NET technology developers are using - whether it's ASP.NET, WCF, Web API, or desktop applications - they will definitely encounter situations where serialization is needed. This course helps them understand the different alternatives and what is the best choice in each scenario.
In this course, we look at serialization from the viewpoints of the two most common scenarios: persisting an application state and exchanging data between entities. First we look at some essential prerequisite concepts. Then we start the serialization learning journey by examining binary serialization, a very important technique to master when writing applications that need to persist their state. We look at the basic concepts of binary serialization and then how to step in and take more control. We then enter the world of XML serialization, which is used heavily in integration scenarios. We look at the different available serializers, and then again we examine how to take fine-grained control over the XML structure. JSON serialization is another important topic, especially in the Web API space, and we examine and compare between the available options. Finally, we'll look at a summarization flowchart that will help you decide which option to use based on each scenario.
Serialization Essentials Hi. This is Mohamad Halabi. Welcome to course Serialization in. NET 4. 5. Whether you're building desktop or web-based. NET applications, chances are you will need to serialize data. This course helps you understand the serialization options provided by the. NET Framework, what is the best option for each set of scenarios, and how to properly use this option. In this module, I will cover a set of essential concepts required to the understanding of the remaining modules.
Binary Serialization The first serialization engine we're going to discuss is the binary serializer. You will learn what is binary serialization, when is it used, why is it important, and how to perform it efficiently.
Fine-grained Binary Serialization In the previous module, you learned about the basics of binary serialization. What you learned will cover various scenarios. There are times, however, when you need more control over the serialization and deserialization processes. So, what are these scenarios and when explicit control over serialization and deserialization is required? And in such cases, what techniques can be used? I will answer these questions in this module.
XML Serialization Using DataContractSerializer In the previous two modules, you learned about binary serialization and its various usage scenarios. In this module, we'll start talking about XML serialization. Specifically, we'll start discussing the most popular XML serializer in the. NET Framework, and that is the DataContractSerializer.
More DataContractSerializer Usage Scenarios In the previous module, you understood the DataContractSerializer. What you learned means that now you know how the serializer works independent of WCF. However, in practice, the serializer will mostly be used within the context of WCF. So, what role does the serializer play within WCF? What is the difference between serialization and encoding? How do we change the format of serialized data from XML to binary XML or MTOM? How does the serializer support versioning scenarios? And how does the serializer map data contracts into XSDs as part of a WSDL contract? This module covers all these scenarios.
Fine-grained XML Serialization In the previous two modules, we learned in detail about the DataContractSerializer. What if, however, the level of control over the XML structure given to us by the DataContractSerializer is not enough? What if we need more control over the structure of XML and more support for XSD constructs? And what if we want to go to the extreme and take complete control over the XML structure without being bound by any specific framework? In this module, we'll examine how to achieve these requirements.
JSON Serialization As the Web API space continues to grow in popularity, JSON continues to be widely adopted. The. NET Framework provides two JSON serializers. Also, there is a popular third-party serializer, which recently got adopted by Microsoft. In this module, we'll discuss and compare between these serializers.
Summarized Comparative Study If you are new to the topic of serialization in the. NET Framework, then the amount of information presented in this module might be overwhelming. As you saw, you have multiple options to choose from for each scenario. In this module, I will provide a summarized look at the different options and what options are best for each scenario.