大きなファイルをアップロードするために、Silverlight アプリでカスタム アップロード コントロールを作成しようとしています。753バイトのサイズをテストするための非常に小さな画像があります。チャンク サイズを 753 に設定すると、すべて正常に動作し、コントロールは 753 バイトすべてを一度に受け取り、これらのバイト配列を FileSaveAs ダイアログに書き込みます (テスト目的で) ストリームとアップロードされたバイトは、アップロードされた画像のコピーとして表示されます。チャンク サイズを 500 に設定すると、500 + 253 の 2 つのチャンクが必要になります。デバッグ時にこれらのバイト (2 つのチャンク) を比較すると、どちらも 1 つのチャンクでアップロードする場合と同じです。唯一の違い - iこれらのマージされたチャンクを新しい画像ファイルに保存した後、このファイルは破損しています。元のサイズとまったく同じですが、破損しているためプレビューできません。そこに何が問題なのかわからない、何かアイデアはありますか?
これらの画像を添付しました:
a.jpg - 元の b.jpg - 破損 (チャンク 500 + 253 でアップロード) c.jpg - チャンク サイズ = 753 のときにアップロード