/// <summary> /// Verifica la igualdad del miembro de dimensión /// </summary> /// <param name="comparar"></param> /// <returns></returns> public override Boolean Equals(Object comparar) { if (comparar == null) { return(false); } if (!(comparar is MiembroDimension)) { return(false); } var miembroComparar = comparar as MiembroDimension; if (Explicita != miembroComparar.Explicita) { return(false); } if ((QNameDimension != null && miembroComparar.QNameDimension == null) || (QNameDimension == null && miembroComparar.QNameDimension != null)) { return(false); } if (QNameDimension != null && miembroComparar.QNameDimension != null && !QNameDimension.Equals(miembroComparar.QNameDimension)) { return(false); } if (Explicita) { if ((QNameMiembro != null && miembroComparar.QNameMiembro == null) || (QNameMiembro == null && miembroComparar.QNameMiembro != null)) { return(false); } if (QNameMiembro != null && miembroComparar.QNameMiembro != null && !QNameMiembro.Equals(miembroComparar.QNameMiembro)) { return(false); } } else { if ((ElementoMiembroTipificado != null && miembroComparar.ElementoMiembroTipificado == null) || (ElementoMiembroTipificado == null && miembroComparar.ElementoMiembroTipificado != null)) { return(false); } if (ElementoMiembroTipificado != null && miembroComparar.ElementoMiembroTipificado != null && !XmlUtil.EsNodoEquivalente(ElementoMiembroTipificado, miembroComparar.ElementoMiembroTipificado)) { return(false); } } return(true); }
/// <summary> /// Crea una representación en cadena de un identificador único /// de este valor de dimensión /// </summary> /// <returns>Identificación en cadena</returns> public string ToIdString() { var res = QNameDimension.ToString() + "|"; if (Explicita) { res += QNameMiembro.ToString(); } else { res += ElementoMiembroTipificado.OuterXml; } return(res); }