2014-01-17 3 views
0

Я имею метод списка как этот тестирования класс, имеющий ThereeКак получить доступ к arraylist?

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

Хорошо, я понял это, но моя проблема заключается в том, как извлечь этот файл, и я использую отдельный метод для этого, поэтому я не могу использовать его с возвратом type –

+0

did not get u, can not u use looping over Ilist –

+0

Но у меня есть метод с возвратом всего списка массивов, а затем мне нужно прочитать этот список массивов –

Смежные вопросы