/// <summary>
 /// Validate the object.
 /// </summary>
 /// <exception cref="ValidationException">
 /// Thrown if validation fails
 /// </exception>
 public override void Validate()
 {
     base.Validate();
     if (DnsName == null)
     {
         throw new ValidationException(ValidationRules.CannotBeNull, "DnsName");
     }
     if (AdminUserName == null)
     {
         throw new ValidationException(ValidationRules.CannotBeNull, "AdminUserName");
     }
     if (LoadBalancingRules != null)
     {
         foreach (var element in LoadBalancingRules)
         {
             if (element != null)
             {
                 element.Validate();
             }
         }
     }
     if (Clients != null)
     {
         foreach (var element1 in Clients)
         {
             if (element1 != null)
             {
                 element1.Validate();
             }
         }
     }
     if (FabricSettings != null)
     {
         foreach (var element2 in FabricSettings)
         {
             if (element2 != null)
             {
                 element2.Validate();
             }
         }
     }
     if (ClusterUpgradeDescription != null)
     {
         ClusterUpgradeDescription.Validate();
     }
     if (Sku != null)
     {
         Sku.Validate();
     }
 }
 /// <summary>
 /// Validate the object.
 /// </summary>
 /// <exception cref="ValidationException">
 /// Thrown if validation fails
 /// </exception>
 public virtual void Validate()
 {
     if (LoadBalancingRules != null)
     {
         foreach (var element in LoadBalancingRules)
         {
             if (element != null)
             {
                 element.Validate();
             }
         }
     }
     if (Clients != null)
     {
         foreach (var element1 in Clients)
         {
             if (element1 != null)
             {
                 element1.Validate();
             }
         }
     }
     if (FabricSettings != null)
     {
         foreach (var element2 in FabricSettings)
         {
             if (element2 != null)
             {
                 element2.Validate();
             }
         }
     }
     if (ClusterUpgradeDescription != null)
     {
         ClusterUpgradeDescription.Validate();
     }
 }