2014-01-17 16 views
0

我有列表的方法是具有三项方如何访问数组列表?这样<strong>测试</strong>

public ArrayList converttolist(string commandText, CommandType commandType) 
    { 
     ArrayList Listlines = new ArrayList(); 
     SqlCommand cmd = new SqlCommand(); 
     cmd.CommandText = commandText; 
     cmd.CommandType = commandType; 
     cmd.Connection = obj_con.getconection(); 
     try 
     { 

      cmd.Connection.Open(); 
      using (SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) 
      { 
       testing ts = new testing(); 

       var alldata = new state_testingCLS.testing(); 

       while (sdr.Read()) 
       { 
        ts.id_11 = Convert.ToInt64(sdr["id_11"]); 
        ts.countryid = Convert.ToInt64(sdr["countryid"]); 
        ts.state = Convert.ToString(sdr["state"]); 
        Listlines.Add((ts)); 
       } 
       sdr.Close(); 
      } 

      return Listlines; 

     } 
     catch (Exception ex) 
     { 

      throw ex; 
     } 
     finally 
     { 
      cmd.Connection.Close(); 
      cmd.Dispose(); 

     } 
    } 

listlines我要取的记录类,但我没有任何想法,这一个,请帮我在这一个

现在,如果我访问它

ArrayList aa= cls.getAll(); 
       foreach (state_testingCLS.testing Txt in aa) 
       { 


        string aa1 = Txt.state.ToString(); 

       } 

相同的数据返回每次

+0

检查更新@NitinVarpe –

+0

我不知道如果我理解你的问题中取值,但要插入'alldata'但从来没有设置它的任何属性。你是否想要插入'ts'? ('Listlines.Add(ts)') –

+0

对不起这是我的错误@ClaudioRedi –

回答

1

您可以创建单独的类

public class MyClass 
{ 
    public Int64 id_11 { get; set; } 
public Int64 countryid { get; set; } 
public string state { get; set; } 
} 

在方法

Ilist<MyClass> myclassList=new List<MyClass>(); 

之后,你可以分配领域这一类的新对象,并添加到列表

myclassList.Add(new MyClass(){ 
    id_11=ts.id_11, 
    countryid =ts.countryid, 
    state =ts.state 
}); 

你可以然后将返回类型的方法更改为IList<MyClass>

更新

for(int i = 0; i < aa.Length; i++) 
{ 
     var obj=(testing)aa[i] 
} 

试图再从OBJ

+0

好吧,我明白这一个,但我的问题是如何获取这一个,我用这个单独的方法,所以我不能用它与回报键入 –

+0

没有得到你,不能使用循环Ilist –

+0

但我有一个方法将返回整个数组列表,然后我必须读取数组列表 –