2014-01-03 3 views
0

Ниже мой код,Добавление значений в список

List<float?> LValues= new List<float?>(); 
List<float?> IValues= new List<float?>(); 
List<float?> BValues= new List<float?>(); 
List<object> data = new List<object>(); 

float? Value_Likelihood_fromList = 0; 
float? Value_Impact_fromList = 0; 
float? Value_Bubblesize_fromList = 0; 

foreach (var item in Read_xml_for_childobjects_id.Root.Descendants("object")) 
    { 
    for (int k = 0; k < 7; k++) 
    { 
     Value_LValues_fromList = LValues.ElementAt(k); 
     Value_IValues_fromList = IValues.ElementAt(k); 
     Value_BValues_fromList = BValues.ElementAt(k); 
     data.Add(new Data { x = Value_LValues_fromList, y = Value_IValues_fromList, z = Value_BValues_fromList }); 
     // data.Add(data_content); 
    } 
} 

Вот мой список содержит 28 значений в каждом как

LValues=[a1,a2,a3,a4....a28], 
IValues=[b1,b2,b3...b28], 
BValues=[c1,c2,c3...c28] 

и мой список данных получает в форме,

data=[[a1,b1,c2],[a2,b2,c2],[a3,b3,c3].....[a28,b28,c28]] 

, но я хочу получить четыре разных списка данных следующим образом:

data=[[a1,b1,c1],[a2,b2,c2]....[a7,b7,c7]], 
data=[[a8,b8,c8],[a9,b9,c9]....[a14,b14,c14]], 
data=[[a15,b15,c15],[a16,b16,c16]....[a21,b21,c21]], 
data=[[a22,b22,c22],[a23,b23,c23]....[a28,b28,c28]], 

Я знаю его очень глупо с моей стороны, чтобы задать этот вопрос, но логики я столкнулся реальные проблемы, чтобы сделать это, любая помощь будет принята с благодарностью ..

Обратите внимание, что я наполнение списка, прочитав строка XML

для справки ниже, как я получаю значения в списке, это только один список, я в той же манере для двух других, а,

for (int j = 0; j < value_BeforeOffset_l.Count; j++) 
{ 
    var xmlAttributeCollection_for_period_BeforeOffset_L = value_BeforeOffset_l[j].Attributes; 
    if (xmlAttributeCollection_for_period_BeforeOffset_L != null) 
    { 
     if (i == 0 && s == 0) 
     { 
      var periodid = xmlAttributeCollection_for_period_BeforeOffset_L["periodid"]; 
      xmlActions_Value_BeforeOffset_L[j] = periodid.Value; 
      period_final_id = periodid.Value; 
      try 
      { 
       period_name = ServiceClient.GetAttributeAsString(sessionId, periodid.Value, "name", ""); 
       if (period_Name.Count() <= 7) 
       { 
        period_Name.Add(period_name); 
       } 
      } 
      catch (Exception ex) 
      { 
       ErrorValue = "Error found...Kindly Check Logs"; 
       logger.ErrorException("QPR Web Service ERROR", ex); 
       return ErrorValue; 
      } 
     } 
     if (s == 0) 
     { 
      try 
      { 
       var action = xmlAttributeCollection_for_period_BeforeOffset_L["value"]; 
       period_final_value = float.Parse(action.Value); 
       LValues.Add(period_final_value);  
      } 
      catch (Exception ex1) 
      { 
       LValues.Add(null); 
      } 
     } 
    }       
} 

-------- Обновленный вопрос -----

foreach (var item in Read_xml_for_childobjects_id.Root.Descendants("object")) 
    { 
    for (int k = 0; k < 7; k++) 
    { 
     Value_LValues_fromList = LValues.ElementAt(k); 
     Value_IValues_fromList = IValues.ElementAt(k); 
     Value_BValues_fromList = BValues.ElementAt(k); 
     data.Add(new Data { x = Value_LValues_fromList, y = Value_IValues_fromList, z = Value_BValues_fromList }); 
     // data.Add(data_content); 
    } 
    } 

Есть 4 шт в Read_xml_for_childobjects_id, так что если мне нужно использовать После зЬтЬ,

data[i] = new List<Data>(); // first initialize this List instance 

По Henk holtermen ответить то, как сделать это .. ???

ответ

3

Самый простой подход:

//List<object> data = new List<object>(); 
List<Data>[] data = new List<Data>[4]; // why use <object> here ? 

//... 

for(int i=0;i<4;i++) 
{ 
    data[i] = new List<Data>(); // first initialize this List instance 
    for (int k = 0; k < 7; k++) 
     //... your current code 
} 
+0

Как я добавить данные в список данных, так как я не могу получить data.Add() Теперь, если выполнить d путь у сказал .. – Reshma

+0

, а также вместо цикл для состояния до 4 У меня есть петля foreach, как это .... foreach (элемент var в Read_xml_for_childobjects_id.Root.Descendants ("object")) {.... который дает 4 идентификатора ... так как я читаю xml string.. then как я возьму значение i при инициализации экземпляра списка ... можете ли вы добавить и показать мне данные в список данных и показать ... – Reshma

+0

Вы можете вызвать 'data [i] .Add (...)'. Я не понимаю другого вопроса. –

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