我正在尝试学习 udp 套接字等。我创建了两个程序服务器和客户端。客户端向服务器发送数据包,服务器将其弹回。
这是我在两个程序中用于将数据转换为字节 [] 和从字节 [] 转换的代码
但是从 byte[] 转换时出现错误
public static Packet Open(byte[] b)
{
MemoryStream memStream = new MemoryStream();
BinaryFormatter binForm = new BinaryFormatter();
memStream.Write(b, 0, b.Length);
memStream.Seek(0, SeekOrigin.Begin);
object obj = new object();
try
{
// this line here is where the error is occurring
obj = (object)binForm.Deserialize(memStream);
}
catch (Exception er)
{
MessageBox.Show(er.Message);
}
if (obj is Packet)
return (Packet)obj;
else
return null;
}
public byte[] Bundle()
{
BinaryFormatter bf = new BinaryFormatter();
MemoryStream ms = new MemoryStream();
bf.Serialize(ms, this);
return ms.ToArray();
}
如果我这样做,所有来自一个程序的工作
Packet p =new Packet();
p.Message="hello";
byte[] data = p.Bundle();
Packet p2 = Packet.Open(data);
MessageBox.Show(p2.Message);
我收到的错误是“无法在“我的客户端程序的名称”中找到程序集
有任何想法吗?