Aliyun.Acs.Ecs.Transform.V20140526.DescribeDisksResponseUnmarshaller.Unmarshall C# (CSharp) Метод

Unmarshall() публичный статический Метод

public static Unmarshall ( UnmarshallerContext context ) : DescribeDisksResponse
context UnmarshallerContext
Результат Aliyun.Acs.Ecs.Model.V20140526.DescribeDisksResponse
        public static DescribeDisksResponse Unmarshall(UnmarshallerContext context)
        {
            DescribeDisksResponse describeDisksResponse = new DescribeDisksResponse();

            describeDisksResponse.HttpResponse = context.HttpResponse;
            describeDisksResponse.RequestId = context.StringValue("DescribeDisks.RequestId");
            describeDisksResponse.TotalCount = context.IntegerValue("DescribeDisks.TotalCount");
            describeDisksResponse.PageNumber = context.IntegerValue("DescribeDisks.PageNumber");
            describeDisksResponse.PageSize = context.IntegerValue("DescribeDisks.PageSize");

            List<DescribeDisksResponse.Disk> disks = new List<DescribeDisksResponse.Disk>();
            for (int i = 0; i < context.Length("DescribeDisks.Disks.Length"); i++) {
                DescribeDisksResponse.Disk disk = new DescribeDisksResponse.Disk();
                disk.DiskId = context.StringValue("DescribeDisks.Disks["+ i +"].DiskId");
                disk.RegionId = context.StringValue("DescribeDisks.Disks["+ i +"].RegionId");
                disk.ZoneId = context.StringValue("DescribeDisks.Disks["+ i +"].ZoneId");
                disk.DiskName = context.StringValue("DescribeDisks.Disks["+ i +"].DiskName");
                disk.Description = context.StringValue("DescribeDisks.Disks["+ i +"].Description");
                disk.Type = context.EnumValue<DescribeDisksResponse.Disk.TypeEnum>("DescribeDisks.Disks["+ i +"].Type");
                disk.Category = context.EnumValue<DescribeDisksResponse.Disk.CategoryEnum>("DescribeDisks.Disks["+ i +"].Category");
                disk.Size = context.IntegerValue("DescribeDisks.Disks["+ i +"].Size");
                disk.ImageId = context.StringValue("DescribeDisks.Disks["+ i +"].ImageId");
                disk.SourceSnapshotId = context.StringValue("DescribeDisks.Disks["+ i +"].SourceSnapshotId");
                disk.AutoSnapshotPolicyId = context.StringValue("DescribeDisks.Disks["+ i +"].AutoSnapshotPolicyId");
                disk.ProductCode = context.StringValue("DescribeDisks.Disks["+ i +"].ProductCode");
                disk.Portable = context.BooleanValue("DescribeDisks.Disks["+ i +"].Portable");
                disk.Status = context.StringValue("DescribeDisks.Disks["+ i +"].Status");
                disk.InstanceId = context.StringValue("DescribeDisks.Disks["+ i +"].InstanceId");
                disk.Device = context.StringValue("DescribeDisks.Disks["+ i +"].Device");
                disk.DeleteWithInstance = context.BooleanValue("DescribeDisks.Disks["+ i +"].DeleteWithInstance");
                disk.DeleteAutoSnapshot = context.BooleanValue("DescribeDisks.Disks["+ i +"].DeleteAutoSnapshot");
                disk.EnableAutoSnapshot = context.BooleanValue("DescribeDisks.Disks["+ i +"].EnableAutoSnapshot");
                disk.EnableAutomatedSnapshotPolicy = context.BooleanValue("DescribeDisks.Disks["+ i +"].EnableAutomatedSnapshotPolicy");
                disk.CreationTime = context.StringValue("DescribeDisks.Disks["+ i +"].CreationTime");
                disk.AttachedTime = context.StringValue("DescribeDisks.Disks["+ i +"].AttachedTime");
                disk.DetachedTime = context.StringValue("DescribeDisks.Disks["+ i +"].DetachedTime");
                disk.DiskChargeType = context.StringValue("DescribeDisks.Disks["+ i +"].DiskChargeType");
                disk.ExpiredTime = context.StringValue("DescribeDisks.Disks["+ i +"].ExpiredTime");

                List<DescribeDisksResponse.Disk.OperationLock> operationLocks = new List<DescribeDisksResponse.Disk.OperationLock>();
                for (int j = 0; j < context.Length("DescribeDisks.Disks["+ i +"].OperationLocks.Length"); j++) {
                    DescribeDisksResponse.Disk.OperationLock operationLock = new DescribeDisksResponse.Disk.OperationLock();
                    operationLock.LockReason = context.StringValue("DescribeDisks.Disks["+ i +"].OperationLocks["+ j +"].LockReason");

                    operationLocks.Add(operationLock);
                }
                disk.OperationLocks = operationLocks;

                List<DescribeDisksResponse.Disk.Tag> tags = new List<DescribeDisksResponse.Disk.Tag>();
                for (int j = 0; j < context.Length("DescribeDisks.Disks["+ i +"].Tags.Length"); j++) {
                    DescribeDisksResponse.Disk.Tag tag = new DescribeDisksResponse.Disk.Tag();
                    tag.TagKey = context.StringValue("DescribeDisks.Disks["+ i +"].Tags["+ j +"].TagKey");
                    tag.TagValue = context.StringValue("DescribeDisks.Disks["+ i +"].Tags["+ j +"].TagValue");

                    tags.Add(tag);
                }
                disk.Tags = tags;

                disks.Add(disk);
            }
            describeDisksResponse.Disks = disks;

            return describeDisksResponse;
        }
DescribeDisksResponseUnmarshaller