private void OpenReader(IQueryContainer queryContainer) { _accessLayer.Database.Connect(); var command = queryContainer.Compile(); queryContainer.AccessLayer.RaiseSelect(command); try { _executeReader = command.ExecuteReader(); } catch (Exception ex) { _accessLayer.RaiseFailedQuery(this, command, ex); throw; } }