You do not need to use inline serialization to serialize DataTable objects. A DataTable is just a bunch of columns and rows. You just have to iterate over the rows of the table and serialize them.
Depending on your tradeoffs, you can copy the DataTable to an equivalent data transfer object, and then binary serialize that object. Such an object will consist of an array of objects that reflect the structure of the DataTable . An object will have one property for each DataTable column.
This way you avoid serializing table metadata and you need simple and fast binary serialization.
Given this, I would avoid Remoting. It is true that the structure is somewhat similar to the WCF structure, but all of this is not supported. Itโs bad that you are stuck using almost the most obsolete version of .NET, you really do not want to rely on technology, which in itself is outdated.
Sockets are not very beautiful, but they are well understood. If you are careful, you will create socket code that is relatively easy to maintain, at least as long as you have to stick with .NET 1.1.
You might want to take a look at the new classes added in .NET 2.0 ( TcpClient , for example) and create a similar API. This way, if you can ever upgrade your image to .NET 2.0, it will be easier for you to use the code that Microsoft will support.
John saunders
source share