有没有一种简单的方法在C++中将数据序列化(转换为xml或二进制格式),然后在C#中反序列化该数据?
我正在使用一些无法运行.NET的远程WINNT机器。我的服务器应用程序完全是用C#编写的,因此我想要一种简单的方法来共享简单的数据(大多数是键值对,可能还包括SQL结果集的表示)。我认为最好的方法是在客户端以某个预定义格式将数据写入xml文件,将xml文件传输到我的服务器,并由C#包装器将xml读入可用的c#对象中。
客户端和服务器通过tcp连接通信,我真正想要的是在客户端内存中序列化数据,将二进制数据通过套接字传输到C#内存流中,以便我可以将其反序列化为c#对象(消除文件创建、传输等),但我不认为存在这样的东西。欢迎给我指点。
编辑
我知道我可以在C++应用程序中创建结构体并在C#中定义它们,然后以这种方式传输数据,但在我看来,这感觉像是我限制了可以发送的内容。我必须为对象设置预定义大小等。