C# 使用for循环添加IList
我有一份结果清单C# 使用for循环添加IList,c#,generics,for-loop,C#,Generics,For Loop,我有一份结果清单 var attributeresult= " some list of items......"; 现在我尝试循环表单结果并将其添加到IList中,但我只得到最后一个插入值,但我想得到所有的值 IList<DynamicColumn> idynamicttableColumns = new List<DynamicColumn>(); DynamicColumn dynamictableColumns = new DynamicColumn();
var attributeresult= " some list of items......";
现在我尝试循环表单结果并将其添加到IList中,但我只得到最后一个插入值,但我想得到所有的值
IList<DynamicColumn> idynamicttableColumns = new List<DynamicColumn>();
DynamicColumn dynamictableColumns = new DynamicColumn();
for (int i = 0; i < attributeresult.Count(); i++)
{
dynamictableColumns.Name = attributeresult.ElementAt(i).AttributeName;
dynamictableColumns.Type = attributeresult.ElementAt(i).AttributeSqlType;
dynamictableColumns.IsNullable = false;
idynamicttableColumns.Add(dynamictableColumns);
}
IList idynamicttableColumns=new List();
DynamicColumn dynamictableColumns=新的DynamicColumn();
对于(int i=0;i
我必须只使用for循环,而不是使用for每个循环。Move
DynamicColumn dynamictableColumns=new DynamicColumn()将>编码到循环中:
IList<DynamicColumn> idynamicttableColumns = new List<DynamicColumn>();
int count = attributeresult.Count();
for (int i = 0; i < count; i++)
{
var item = attributeresult.ElementAt(i);
DynamicColumn dynamictableColumns = new DynamicColumn();
dynamictableColumns.Name = item .AttributeName;
dynamictableColumns.Type = item .AttributeSqlType;
dynamictableColumns.IsNullable = false;
idynamicttableColumns.Add(dynamictableColumns);
}
IList idynamicttableColumns=new List();
int count=attributeresult.count();
for(int i=0;i
MoveDynamicColumn dynamictableColumns=newdynamiccolumn()将>编码到循环中:
IList<DynamicColumn> idynamicttableColumns = new List<DynamicColumn>();
int count = attributeresult.Count();
for (int i = 0; i < count; i++)
{
var item = attributeresult.ElementAt(i);
DynamicColumn dynamictableColumns = new DynamicColumn();
dynamictableColumns.Name = item .AttributeName;
dynamictableColumns.Type = item .AttributeSqlType;
dynamictableColumns.IsNullable = false;
idynamicttableColumns.Add(dynamictableColumns);
}
IList idynamicttableColumns=new List();
int count=attributeresult.count();
for(int i=0;i
您想要实现什么目标?在循环过程中尝试添加内容时,您不会帮自己任何忙。您想实现什么?在循环期间尝试添加内容时,您不会帮自己任何忙。添加解释:问题是您只创建一个对象,然后继续编辑该对象的属性;它仍然是您不断添加到列表中的同一个对象。此修复程序会为每次迭代创建一个新对象。在修复OP的代码时,是否也可以将重复使用Count()
和ElementAt(i)
替换为foreach
循环?这可能会对性能造成巨大影响。添加一个解释:问题是您只创建一个对象,然后继续编辑该对象的属性;它仍然是您不断添加到列表中的同一个对象。此修复程序会为每次迭代创建一个新对象。在修复OP的代码时,是否也可以将重复使用Count()
和ElementAt(i)
替换为foreach
循环?这可能是一个巨大的性能打击。