protected override void ExecuteAction(Context context, Step step) { Action<IDataReader> action = step.GetParameterValue<Action<IDataReader>>("Row Action"); string connString = step.GetParameterValue<string>("Connection String"); Query query = step.GetParameterValue<Query>("Query Definition"); var parameters = query.Parameters == null ? null : query.Parameters.ToSqlParameterArray(); var dal = new DataAccess(connString); dal.ForEachRow(action, query.Sql, query.Type, parameters); }