internal bool BindingIsOptional(string bindingName)
{
var customFormDefinition = CustomFormDefinition;
XElement bindingsXml;
if (customFormDefinition?.Root != null)
{
bindingsXml = customFormDefinition.Root;
}
else if (!_generatedForm.IsNullOrEmpty())
{
bindingsXml = XElement.Parse(_generatedForm);
}
else
{
bindingsXml = BindingXml;
}
var binding = bindingsXml
.Descendants(CmsNamespace + "binding")
.FirstOrDefault(e => (string)e.Attribute("name") == bindingName);
return binding != null && string.Equals((string)binding.Attribute("optional"), "true", StringComparison.OrdinalIgnoreCase);
}
}