【C#新特性】不用out ref同时返回多个值-元组Tuple

元组Tuple,它是一种固定成员的泛型集合

下面先看看官方的一个使用例子:

创建一个包含7个元素的Tuple数组

// Create a 7-tuple.

var population = new Tuple<string, int, int, int, int, int, int>( "New York", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278);// Display the first and last elements.

Console.WriteLine("Population of {0} in 2000: {1:N0}",population.Item1, population.Item7);

我们使用Tuple来完成一次简单数据集的传递工作。

将Tuple作为返回值

public List<Tuple<int,string,DateTime>> GetUsers(){ 

  string sql="select ID,Name,CreateTime from Tbl_Users";

using (SqlDataReader r = SqlHelper.ExecuteReader(Connections.AdminDBConString, CommandType.Text, sql))   

 {             

        List<Tuple<int,string,DateTime>> list = new List<Tuple<int,string,DateTime>>(); 

              while (r.Read()) 

              { 

                  Tuple<int,string,DateTime> t = new Tuple<int,string,DateTime>(Convert.ToInt32(r[0]),r[1].ToString(),Convert.ToDatetime(r[2])); 

                  list.Add(t);

                } 

              return list; 

          }

}

//使用也非常方便:

List<Tuple<int,string,datetime>> list=GetUsers();

foreach(Tuple<int,string,datetime> t in list)

{ 

 Console.write(t.Item1);//ID 

 Console.write(t.Item2);//Name

   Console.write(t.Item3);//CreateTime

}

 

posted @ 2017-06-28 16:54  0539  阅读(1312)  评论(0编辑  收藏  举报