現在、VisualStudio2010でテストしています。UdpClientを介して接続するクライアントとサーバーを作成しました。
クライアントからサーバーにオブジェクトを送信したい。オブジェクトをバイトに変換する方法と、オブジェクトに変換する方法が2つあります。これで、アプリケーションをテストするときに、サーバーで受信したアプリケーションをオブジェクトに戻すことができなくなりました。
サーバーはオブジェクトが受信されたことを確認し、それをバイトからオブジェクトに変換しようとしますが、これによりエラーが発生します。
System.Runtime.Serialization.SerializationException was unhandled Message=Unable to find assembly
両方のアプリケーションが異なる名前空間にあるため、これは問題ないようです...
これらは私の変換方法です。クライアントとサーバーの両方で同じ
public byte[] ToBytes() {
using (MemoryStream stream = new MemoryStream()) {
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(stream, this);
stream.Position = 0;
byte[] byteRij = new byte[1024];
stream.Read(byteRij, 0, (int)stream.Length);
return byteRij;
}
}
public static Datagram ToDatagram(byte[] rij) {
using (MemoryStream stream = new MemoryStream()) {
stream.Write(rij, 0, rij.Length);
stream.Position = 0;
BinaryFormatter formatter = new BinaryFormatter();
return (Datagram)formatter.Deserialize(stream);
}
}
どうすればこれを解決できますか?前もって感謝します