私の関数に渡される大きなバイト配列を処理する必要があります。この入力バイト配列のコンテンツをより小さな "チャンク"でアウトバウンドバイト配列にコピーする必要があります。バイト配列からチャンクをコピーするループが必要です
アウトバウンド配列で作成されたデータのすべてのチャンクについて、Webサービスを呼び出す必要があります。
戻ってくると、入ってくるバイト配列のループを再開し、完全な着信配列が処理されるまで(つまり、チャンクでWebサービスに送信されるまで)データの全体または部分を渡し続ける必要があります。
私はC#の新機能で、動作するループに苦労しています。私は "チャンク"を処理するためにWebサービスを呼び出す方法を知っていますが、私は正しいループを得ることができません。ここに私が現在持っている哀れな混乱のスケッチがあります:
int chunkSize = 10000;
byte[] outboundBuffer = new byte[chunkSize];
while (BytesRead > 0)
{
long i = 0;
foreach (byte x in incomingArray)
{
BytesRead += 1;
outboundBuffer[i] = incomingArray[i]
i++;
}
uploadObject.Size = BytesRead;
uploadObject.MTOMPayload = outboundBuffer;
// call web service here and pass the uploadObject
// get next "chunk" until incomingArray is fully processed
}
私はこれが混乱していて動作しないことを知っています。誰かがこれを行うために適切なループをスケッチすることができますか?どうもありがとう。
このコードは私のためにうまく働きました。手伝ってくれてどうもありがとう。 –