Example #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Hellgate.ColumnAttribute"/> class.
 /// </summary>
 /// <param name="type">Type.</param>
 /// <param name="constraints">Constraints.</param>
 /// <param name="key">Key. If constraints [FK] table name</param>
 /// <param name="value">Value. If constraints [FK] column name</param>
 public ColumnAttribute(string type, DataConstraints constraints, Type key = null, string value = "")
 {
     this.type        = type;
     this.constraints = new DataConstraints[] { constraints };
     this.key         = key;
     this.value       = value;
 }
        /// <summary>
        /// Converts to SQL constraints.
        /// </summary>
        /// <returns>The to SQL constraints.</returns>
        /// <param name="constraints">Constraints.</param>
        public string ConvertToSQLConstraints(DataConstraints[] constraints)
        {
            string cons = "";
            for (int i = 0; i < constraints.Length; i++) {
                switch (constraints [i]) {
                case DataConstraints.AI:
                    cons += " PRIMARY KEY AUTOINCREMENT";
                break;
                case DataConstraints.NOTNULL:
                    cons += " NOT NULL";
                break;
                case DataConstraints.PK:
                    if (Array.FindIndex (constraints, c => c == DataConstraints.AI) < 0) {
                        cons += " PRIMARY KEY";
                    }
                break;
                case DataConstraints.FK:

                break;
                case DataConstraints.UNIQUE:
                    cons += " UNIQUE";
                break;
                }
            }

            return cons;
        }
Example #3
0
        /// <summary>
        /// Checks the constraints.
        /// </summary>
        /// <returns><c>true</c>, if constraints was checked, <c>false</c> otherwise.</returns>
        /// <param name="constraints">Constraints.</param>
        public bool CheckConstraints(DataConstraints constraints)
        {
            if (!isConstraints)
            {
                return(false);
            }

            if (this.constraints == null)
            {
                return(false);
            }

            if (Array.FindIndex(this.constraints, c => c == constraints) < 0)
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }