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); }