ps-team
10/27/2017 - 8:03 AM

Output file size for related documents and convert to KB, MB, GB etc

Output file size for related documents and convert to KB, MB, GB etc

//Something like this
@{
 var RelatedDocuments = CurrentNode.RelatedNodes("Related Documents"); 
  
}

@foreach(var item in RelatedDocuments) {

  var itemSize = SizeSuffix(item.Size);
  @itemSize
  
}


@functions {
  static readonly string[] SizeSuffixes = 
                     { "bytes", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB" };
  static string SizeSuffix(Int64 value)
  {
      if (value < 0) { return "-" + SizeSuffix(-value); } 
      if (value == 0) { return "0.0 bytes"; }

      int mag = (int)Math.Log(value, 1024);
      decimal adjustedSize = (decimal)value / (1L << (mag * 10));

      return string.Format("{0:n1} {1}", adjustedSize, SizeSuffixes[mag]);
  }
}