How POCO DataSet Ensures That Polymorphic Interfaces Are Serialized Correctly

POCO DataSet uses a combination of interfaces and concrete implementations. The public surface often exposes IDataSet, IDataTable, IDataRow, and IColumnMetadata, while the actual objects are instances of DataSet, DataTable, DataRow, and ColumnMetadata.

Challenges with Polymorphism in JSON

Solution Used by POCO DataSet

As a result, polymorphic interfaces behave predictably during serialization and deserialization. The consuming code can remain interface-oriented, while the JSON layer works with concrete types.

 

Table of Content POCO DataSet Serialization and Deserialization