public override bool Equals(object obj) { if (obj == null) { return(false); } if (GetType() != obj.GetType()) { return(false); } ONSimpleType lObj = obj as ONSimpleType; if ((lObj.Value == null) && (Value == null)) { return(true); } if ((lObj.Value == null) || (Value == null)) { return(false); } return(lObj.Value.Equals(Value)); }
public static void GetType_XMLSimple(DataTypeEnumerator pType, XmlTextWriter xmlWriter, ONSimpleType pValue, double dtdVersion) { switch (pType) { case (DataTypeEnumerator.Int): ONXmlInt.ON2XML(xmlWriter, pValue as ONInt, dtdVersion, ONXml.XMLTAG_LITERAL); break; case (DataTypeEnumerator.Bool): ONXmlBool.ON2XML(xmlWriter, pValue as ONBool, dtdVersion, ONXml.XMLTAG_LITERAL); break; case (DataTypeEnumerator.Blob): ONXmlBlob.ON2XML(xmlWriter, pValue as ONBlob, dtdVersion, ONXml.XMLTAG_LITERAL); break; case (DataTypeEnumerator.Date): ONXmlDate.ON2XML(xmlWriter, pValue as ONDate, dtdVersion, ONXml.XMLTAG_LITERAL); break; case (DataTypeEnumerator.DateTime): ONXmlDateTime.ON2XML(xmlWriter, pValue as ONDateTime, dtdVersion, ONXml.XMLTAG_LITERAL); break; case (DataTypeEnumerator.Nat): ONXmlNat.ON2XML(xmlWriter, pValue as ONNat, dtdVersion, ONXml.XMLTAG_LITERAL); break; case (DataTypeEnumerator.Real): ONXmlReal.ON2XML(xmlWriter, pValue as ONReal, dtdVersion, ONXml.XMLTAG_LITERAL); break; case (DataTypeEnumerator.String): ONXmlString.ON2XML(xmlWriter, pValue as ONString, dtdVersion, ONXml.XMLTAG_LITERAL); break; case (DataTypeEnumerator.Text): ONXmlText.ON2XML(xmlWriter, pValue as ONText, dtdVersion, ONXml.XMLTAG_LITERAL); break; case (DataTypeEnumerator.Time): ONXmlTime.ON2XML(xmlWriter, pValue as ONTime, dtdVersion, ONXml.XMLTAG_LITERAL); break; } }
/// <summary> /// Adds the WHERE part of the SQL sentence and adds tha parameter according to this part /// </summary> /// <param name="fieldName">Name of the field to put in the SQL sentence</param> /// <param name="fieldValue">Value of the data to put in the SQL sentence</param> public void AddWhere(string fieldName, ONSimpleType fieldValue) { mWhereConjuncion.Add(fieldName + " = ?"); AddParameter(fieldName, fieldValue); }
/// <summary> /// Adds the values that will be updated in the DataBase /// </summary> /// <param name="fieldName">Name of the field to put in the SQL sentence</param> /// <param name="fieldValue">Value of the data to put in the SQL sentence</param> public void AddSet(string fieldName, ONSimpleType fieldValue) { mFields.Add(fieldName); AddParameter(fieldName, fieldValue); }
/// <summary> /// Add OrderBy fields /// </summary> /// <param name="alias">Table alias name</param> /// <param name="field">Field name</param> /// <param name="orderByType">Asc/Des order type</param> /// <param name="val">Bound value</param> public void AddOrderBy(string alias, string field, OrderByTypeEnumerator orderByType, ONSimpleType val) { // Compose alias StringBuilder lFieldBuilder = new StringBuilder(); if (alias != "") { lFieldBuilder.Append(alias); lFieldBuilder.Append("."); lFieldBuilder.Append(field); } else lFieldBuilder.Append(field); // Add OrderBy if (orderByType == OrderByTypeEnumerator.Des) mOrderBy.Add(lFieldBuilder.ToString() + " DESC"); else mOrderBy.Add(lFieldBuilder.ToString()); // Without StartRow if (val == null) return; // Extract previous OrderBy StringBuilder lDisjuntionBuilder = new StringBuilder(); if (mOrderByDisjuntion.Count > 0) // Not first StartRow { lDisjuntionBuilder.Append(mOrderByDisjuntion[mOrderByDisjuntion.Count - 1]); lDisjuntionBuilder.Append(" AND "); mOrderByDisjuntion.RemoveAt(mOrderByDisjuntion.Count - 1); } // Add Field lDisjuntionBuilder.Append(lFieldBuilder); // Add StartRow if (orderByType == OrderByTypeEnumerator.Des) { mOrderByDisjuntion.Add(lDisjuntionBuilder.ToString() + " < ?"); AddOrderByParameter(val); } else { mOrderByDisjuntion.Add(lDisjuntionBuilder.ToString() + " > ?"); AddOrderByParameter(val); } mOrderByDisjuntion.Add(lDisjuntionBuilder.ToString() + " = ?"); }