2014-08-31 3 views
0

Я хотел бы создать список объектов, чтобы заменить этот метод создания их:Как я могу создать объект динамически?

 var colors= new List<object>() 
     { 
      new {key="1",value="red"}, 
      new {key="2",value="white"}, 
      new {key="3",value="blue"} 
     }; 

Я хочу создать объект с помощью ключей и значений из списков вместо жесткого кодирования. Что-то вроде этого:

var colors= new List<object>() 
     List<String> Keys= new List<String>(); 
     List<String> Values= new List<String>(); 

     for(int i = 0; i<Keys.count();++i) 
    { 
    colors.Add(put logic to add keys and values to colors object(s) here) 
    }; 

Как это сделать: Спасибо за любую помощь!

ответ

0
var colors= new List<object>() 
     List<String> Keys= new List<String>(); 
     List<String> Values= new List<String>(); 

    for(int i = 0; i<Keys.count();++i) 
    { 
    colors.Add(new {key=Keys[i],value=Values[i]}) 
    } 

Попробуйте вышеуказанное.

+0

Благодаря TGH ... Прекрасно работает! – CloudyKooper

0

Вы можете сделать это в гораздо более выразительным способом с использованием Linq, в частности Enumerable.Zip():

List<string> keys = ...; 
List<string> values = ...; 

var colors = keys.Zip(values, (k, v) => new { key = k, value = v }).ToList(); 
Смежные вопросы