public string SerializeBinding(string globalLang, string globalBaseUri, TileBranding globalBranding, bool globalAddImageQuery)
{
StringBuilder bindingNode = new StringBuilder(String.Empty);
bindingNode.AppendFormat("<binding template='{0}'", TemplateName);
if (!String.IsNullOrWhiteSpace(FallbackName))
{
bindingNode.AppendFormat(" fallback='{0}'", FallbackName);
}
if (!String.IsNullOrWhiteSpace(Lang) && !Lang.Equals(globalLang))
{
bindingNode.AppendFormat(" lang='{0}'", Util.HttpEncode(Lang));
globalLang = Lang;
}
if (Branding != TileBranding.Logo && Branding != globalBranding)
{
bindingNode.AppendFormat(" branding='{0}'", Branding.ToString().ToLowerInvariant());
}
if (!String.IsNullOrWhiteSpace(BaseUri) && !BaseUri.Equals(globalBaseUri))
{
bindingNode.AppendFormat(" baseUri='{0}'", Util.HttpEncode(BaseUri));
globalBaseUri = BaseUri;
}
if (AddImageQueryNullable != null && AddImageQueryNullable != globalAddImageQuery)
{
bindingNode.AppendFormat(" addImageQuery='{0}'", AddImageQuery.ToString().ToLowerInvariant());
globalAddImageQuery = AddImageQuery;
}
bindingNode.AppendFormat(">{0}</binding>", SerializeProperties(globalLang, globalBaseUri, globalAddImageQuery));
return bindingNode.ToString();
}