Exemple #1
0
 private void GetStorageAndStreams(StoragePart storage, CompoundDocumentItem parent)
 {
     foreach (var item in parent.Children)
     {
         if (item.ObjectType == 1)      //Substorage
         {
             var part = new StoragePart();
             storage.SubStorage.Add(item.Name, part);
             GetStorageAndStreams(part, item);
         }
         else if (item.ObjectType == 2) //Stream
         {
             storage.DataStreams.Add(item.Name, item.Stream);
         }
     }
 }
Exemple #2
0
 private void WriteStorageAndStreams(StoragePart storage, CompoundDocumentItem parent)
 {
     foreach (var item in storage.SubStorage)
     {
         var c = new CompoundDocumentItem()
         {
             Name = item.Key, ObjectType = 1, Stream = null, StreamSize = 0, Parent = parent
         };
         parent.Children.Add(c);
         WriteStorageAndStreams(item.Value, c);
     }
     foreach (var item in storage.DataStreams)
     {
         var c = new CompoundDocumentItem()
         {
             Name = item.Key, ObjectType = 2, Stream = item.Value, StreamSize = (item.Value == null ? 0 : item.Value.Length), Parent = parent
         };
         parent.Children.Add(c);
     }
 }