我有这种形式的匿名类型:
new List<MyList>()
{
new Column { Name = "blah", Width = 100, Hidden = true },
new Column { Name = "blah1", Width = 60, Hidden = false }
}
如何动态创建列表中的内容,例如:
new List<MyList>()
{
foreach (var columns in col)
{
new Column { Name = columns.Name ... }
}
}
即使col返回正确的数据类型,上面的例子也是不可接受的,我看不出原因。
答案 0 :(得分:7)
您尝试遍历对象初始化程序块内的集合(thx to Luke)。
首先尝试创建列表,然后填写它,
var list = new List<MyList>();
foreach (var columns in col)
{
list.Add(new Column { Name = columns.Name ... });
}
答案 1 :(得分:2)
不确定你究竟在问什么,但是你尝试过以下形式:
col.Select(c => new Column {Name = c.Name ... etc}).ToList();
答案 2 :(得分:1)
可能像
var theList = new List<MyList>();
col.ForEach(c=> theList.Add( new Column(){ Name=c.Name ... etc } ));