C# tcp 套接字如何判断正在发送的对象类型?

标签 c# .net sockets tcp

如果服务器端代码如下所示,如何判断通过套接字发送的对象类型

        NetworkStream stream = socket.GetStream();
        BinaryFormatter formatter = new BinaryFormatter();
        formatter.Serialize(stream,objectToBeSent);

最佳答案

要知道正在发送的对象类型的唯一方法是消息中是否发送了一些元数据来指示它是什么。两个端点都应该知道序列化模式,以便每个端点都可以适本地序列化和反序列化。这是(或者应该)您为套接字通信定义的协议(protocol)的一部分。

关于C# tcp 套接字如何判断正在发送的对象类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9334027/

相关文章:

c++ - 为什么 ZeroMQ 不使用其内部线程等待(接收/发送)?

c - c语言的socket编程中,为什么要在server程序中指定socket地址?

c# - 是什么?是指类型之后?

c# - 如何仅在程序安装后第一次加载表单

c# - 如何访问 x :Name-property in code - for non FrameworkElement objects?

.net - 在不停止服务的情况下更新 dll

c# - Json.NET 的 Pascal 大小写动态属性

c# - iOS:缺少条形样式外观的 Monotouch 绑定(bind)?

c# - 一般计算 WCF 操作执行时间

html - 如何用c语言通过tcp发送http协议(protocol)的html文件?