Tengo que procesar una matriz de bytes grande que se pasa a mi función. Necesito copiar el contenido de esta matriz de bytes entrante en "fragmentos" más pequeños a una matriz de bytes salientes.Necesito un bucle para copiar fragmentos de una matriz de bytes
Por cada "porción" de datos creada en la matriz de salida, necesito llamar a un servicio web.
A su regreso, debo reanudar el bucle a través de la matriz de bytes entrante, continuar pasando un fragmento parcial o total de datos hasta que se procese la matriz completa entrante (es decir, enviada al servicio web en fragmentos).
Soy muy nuevo en C# y estoy luchando con un bucle que funciona. Sé cómo llamar al servicio web para manejar un "fragmento" pero no puedo obtener el bucle correcto. Aquí hay un boceto del lío patético que tengo actualmente:
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
}
Sé que esto es un desastre y no funcionará; ¿alguien podría hacer un boceto adecuado para hacer esto? Muchas gracias.
Este código funcionó muy bien para mí. Muchas gracias por tu ayuda. –