2011-06-29 66 views
1

我有一个CustomObject,说有以下attibutes定义:创建列表<CustomObject>从列表<string>

string Name {get;set;} 
string EmailAddress{get;set;} 

另外,我有一个单独的List<string>包含所有的名字“

我想填充List<CustomObject>,每个CustomObject的名称都是从List<string> names分配的。

我该如何使用Linq来实现这个功能?

回答

4
var strList = new List<string>(); 
var coList = strList.Select(item => new CustomObject() {Name = item}).ToList(); 
3

尝试以下方法:

List<CustomObject> customObjectList = 
    (from item in stringList 
    select new CustomObject { Name = item, EmailAddress = String.Empty }).ToList(); 
+0

1用于适当地省略'()'和间隔的对象初始化。 -1使用查询风格,在绝对不需要的情况下,通过将其包含在圆括号中以使用'.ToList'来进一步歪曲它。 – Shibumi

2

编辑:移除垃圾类声明

IList<string> names = new List<string> { "first name", "second name" }; 
IList<SampleObject> myObjects = 
    names.Select(x => new SampleObject { Name = x }).ToList();