示例#1
0
文件: Key.cs 项目: simonep77/bdo
        /// <summary>
        /// Imposta i parametri da utilizzare nella where utilizzando l'array di input per i valori della key
        /// </summary>
        /// <param name="dbIn"></param>
        /// <param name="keyValuesIn"></param>
        /// <returns>L'array contente i valori della key utilizzati</returns>
        public object[] FillKeyQueryWhereParams(IDataBase dbIn, object[] keyValuesIn)
        {
            for (int i = 0; i < this.Properties.Count; i++)
            {
                var value = keyValuesIn[i];

                //Se oggetto mappato prende il valore dalla PK
                if (value is DataObjectBase)
                {
                    var bdoValue = (DataObjectBase)value;
                    value = ((DataObjectBase)value).mClassSchema.PrimaryKey.GetValuesForDb(bdoValue)[0];
                }

                dbIn.AddParameter(this.Properties[i].Column.GetKeyParamName(), value);
            }

            return(keyValuesIn);
        }