I have a large xml document that needs to be processed 100 records at a time
It is being done within a Windows Service written in c#.
The structure is as fo
Naive, iterative, but works [EDIT: in .NET 3.5 only]
public List ChunkDocket(XDocument docket, int chunkSize)
{
var newDockets = new List();
var d = new XDocument(docket);
var orders = d.Root.Elements("order");
XDocument newDocket = null;
do
{
newDocket = new XDocument(new XElement("docket"));
var chunk = orders.Take(chunkSize);
newDocket.Root.Add(chunk);
chunk.Remove();
newDockets.Add(newDocket);
} while (orders.Any());
return newDockets;
}