C# 自定义异常中innerException:exception


 class DatabaseException:Exception
    {
        public DatabaseException(string message,
            System.Data.SqlClient.SQLException exception)
            : base(message,innerException: exception)  
        {
            
        }

        public DatabaseException(string message,
            System.Data.OracleClient.OracleException exception)
            :base(message,innerException:exception)
        {
            
        }
        public DatabaseException()
        {

        }
        public DatabaseException(string message)
            :base(message)
        {

        }
        public DatabaseException(
            string message,Exception exception)
            :base(message, innerException :exception)
        {
            //
        }

        public DatabaseException(
            SerializationInfo serializationInfo,
            StreamingContext context)
            : base(serializationInfo, context)
        {
            //...
        }
    }
}
namespace System.Data
{
    namespace SqlClient
    {
        class SQLException:Exception
        {

        }
    }
    namespace OracleClient
    {
        class OracleException : Exception
        {

        }
    }
}

指定要调用的基类中innerException:exception此处:的用处和innerException:exception的含义是什么?