Exemplo n.º 1
0
        /// <summary>
        /// Prints the statement parameters.
        /// </summary>
        /// <param name="dialect">The dialect.</param>
        /// <param name="stat">The stat.</param>
        /// <returns></returns>
        public static string PrintStatementParameters(SqlDialect dialect, StatementMap stat)
        {
            var parameters = new List <string>();

            if (stat.InputParametersMap.Count > 0)
            {
                foreach (var inputParam in stat.InputParametersMap)
                {
                    parameters.Add(string.Format("{0} {1}", inputParam.Value, inputParam.Key));
                }
            }
            else if (stat.DbParametersMap.Count > 0)
            {
                foreach (var dbParam in stat.DbParametersMap)
                {
                    string dbParamType;
                    if (dbParam.Value == null)
                    {
                        dbParamType = "object";
                    }
                    else
                    {
                        dbParamType = SqlDialect.PrintClrTypeToString(dialect.GetClrType(dbParam.Value.Value, true), false);
                    }
                    parameters.Add(string.Format("{0} {1}", dbParamType, dbParam.Key));
                }
            }

            return(string.Join(", ", parameters));
        }