コード例 #1
0
 public IEnumerable <T> Execute()
 {
     using (var command = DataAccessQuery.GetCommand())
     {
         using (var reader = command.ExecuteReader())
         {
             while (reader.Read())
             {
                 T entity = EntityFactory();
                 foreach (var nameAndReaderAction in ReaderActionsByName)
                 {
                     var name         = nameAndReaderAction.Key;
                     var readerAction = nameAndReaderAction.Value;
                     var position     = reader.GetOrdinal(name);
                     readerAction(reader, position, entity);
                 }
                 yield return(entity);
             }
         }
     }
 }
コード例 #2
0
 public int Execute()
 {
     using (var command = DataAccessQuery.GetCommand())
     {
         using (var reader = command.ExecuteReader())
         {
             int index = 0;
             while (reader.Read())
             {
                 foreach (var nameAndReaderAction in ReaderActionsByName)
                 {
                     var name         = nameAndReaderAction.Key;
                     var readerAction = nameAndReaderAction.Value;
                     var position     = reader.GetOrdinal(name);
                     readerAction(reader, position, index);
                 }
                 index++;
             }
             return(index);
         }
     }
 }