EF读取多个结果集

 1 using (var command = CreateCommand(sql, CommandType.Text, parameters))
 2             {
 3                 using (var reader = await command.ExecuteReaderAsync())
 4                 {
 5                     var list = new List<CheckResultDto>();
 6                     var total = 0;
 7                     var i = 0;
 8                     //第一个结果集
 9                     while (reader.Read())
10                     {
11                         CheckResultDto dto = new CheckResultDto();
12                         dto.IsGroup = int.Parse(reader["IsGroup"].ToString()) == 1 ? true : false;
13                         dto.Name = reader["Name"].ToString();
14                         dto.Status = (TurnoverBoxStatusEnum)int.Parse(reader["Status"].ToString());
15                         dto.Path = reader["Path"].ToString();
16                         dto.Date = Convert.ToDateTime(reader["Date"].ToString());
17                         18                         dto.SortLine = reader["SortLine"].ToString();
19                         dto.RouteName = reader["RouteName"].ToString();
20                         dto.Code = reader["Code"].ToString();
21                         dto.BCode = reader["BCode"].ToString();
22                         list.Add(dto);
23                         if (i == 10)
24                         {
25                             total = int.Parse(reader["total"].ToString());
26                         }
27                         i++;
28                     }
29                     //第二个结果集
30                     reader.NextResult();
31                     while (reader.Read())
32                     {
33                         total = int.Parse(reader["total"].ToString());
34                     }
35 
36                         return list;
37                 }
38             }

 

posted @ 2022-05-17 11:22  流年sugar  阅读(90)  评论(0编辑  收藏  举报