UDPソケットを送信しています。受信したすべてのバイトをメモリストリームに書き込み、メモリストリームオブジェクトをデシリアライズ用に渡します。 オブジェクトタイプ 'ImagePacket'のアセンブリIDがありません。オブジェクト型 'ImagePacket'のアセンブリIDがありません。シリアル化例外が発生しました。C#
レシーバー終了コード:
ImageStream = new MemoryStream();
while (AccumulatingBytes <= TotalSizeOfComplexObject)
{
byte[] Recievedbytes = UdpListener.Receive(ref RemoteEndPoint);
ImageStream.Write(Recievedbytes, 0, Recievedbytes.Length);
AccumulatingBytes += Recievedbytes.Length;
}
ImageStream.Position = 0;
imagecontainer = (ImageContainer)bformater.Deserialize(ImageStream);//Here the Code Segment Breaks and Exception thrown
ImagePacketは自分のクラスですか? –
はいImagePacketは自分のクラスです – Samie
[MSDN投稿](http://social.msdn.microsoft.com/Forums/eu/netfxremoting/thread/976b61ca-443f-4e6c-86d9-521542c4c8c8)は、これがストリームに関連する可能性があることを示しています腐敗。さらに進む前に、受信したバイトが送信されたバイトと同じであることを確認してください。特に(すでに言及したように)UDPは精度についてはあまり気にしません...正確さを望むならTCPを使います。 –