Azavea.Open.DAO.SQL.SqlUtilities.SqlParamsToString C# (CSharp) Method

SqlParamsToString() public static method

Converts the sql statement and parameters into a nicely formatted string for output in error messages or log statements.
public static SqlParamsToString ( string sql, IEnumerable sqlParams ) : string
sql string The SQL statement that needs the list of params.
sqlParams IEnumerable The list of params to format.
return string
        public static string SqlParamsToString(string sql, IEnumerable sqlParams)
        {
            StringBuilder sb = DbCaches.StringBuilders.Get();
            sb.Append("SQL: {");
            sb.Append(sql ?? "[null string]");
            sb.Append("} Params: {");
            if (sqlParams == null)
            {
                sb.Append("[null list]");
            }
            else
            {
                bool first = true;
                foreach (object val in sqlParams)
                {
                    if (first)
                    {
                        first = false;
                    }
                    else
                    {
                        sb.Append(", ");
                    }
                    if (val == null)
                    {
                        sb.Append("[real null]");
                    }
                    else if (val is DBNull)
                    {
                        sb.Append("[db null]");
                    }
                    else
                    {
                        sb.Append("\"");
                        sb.Append(val);
                        sb.Append("\"");
                    }
                }
                if (first)
                {
                    // it was empty
                    sb.Append("[empty list]");
                }
            }

            sb.Append("}");
            string retVal = sb.ToString();
            DbCaches.StringBuilders.Return(sb);
            return retVal;
        }