public override void Initialize()
    {
        m_ProcedureParameters =
            Execute(ProcedureParameterCommandText)
            .Select(o => ProcedureParameter.CreateFrom(SqlHelper, o))
            .ToDictionary(x => new ProcedureParameterKey(x.ProcedureNameKey, x.ParameterName));
        var procedureParameters = m_ProcedureParameters.Values.ToLookup(x => x.ProcedureNameKey);
        var procedures          =
            Execute(ProcedureCommandText)
            .Select(o => Procedure.CreateFrom(SqlHelper, o, procedureParameters))
            .ToArray();

        m_ProceduresById   = procedures.ToDictionary(x => x.ProcedureId);
        m_ProceduresByName = procedures.ToDictionary(x => x.ProcedureNameKey);
    }