C# 索引超出范围。必须为非负数且小于集合的大小
我正在尝试在for循环中添加一个列表 这是我的代码 我在这里创建了一个属性C# 索引超出范围。必须为非负数且小于集合的大小,c#,C#,我正在尝试在for循环中添加一个列表 这是我的代码 我在这里创建了一个属性 public class SampleItem { public int Id { get; set; } public string StringValue { get; set; } } 我想从另一个列表中添加值 List<SampleItem> sampleItem = new List<SampleItem>(); // Error: Index out of r
public class SampleItem
{
public int Id { get; set; }
public string StringValue { get; set; }
}
我想从另一个列表中添加值
List<SampleItem> sampleItem = new List<SampleItem>(); // Error: Index out of range
for (int i = 0; i < otherListItem.Count; i++)
{
sampleItem[i].Id = otherListItem[i].Id;
sampleItem[i].StringValue = otherListItem[i].Name;
}
List sampleItem=new List();//错误:索引超出范围
for(int i=0;i
有人能纠正我的代码吗。当
sampleItem
没有项目时,您引用的是sampleItem[i]
,因此索引超出了范围。你必须把物品
List sampleItem=new List();
for(int i=0;i
List sampleItem=new List();//错误:索引超出范围
for(int i=0;i
A列表
必须添加到中;如果尚未创建索引项,则不能仅将其索引项设置为值。你需要像这样的东西:
List<SampleItem> sampleItems = new List<SampleItem>();
for (int i = 0; i < otherListItem.Count; i++)
{
SampleItem si = new SampleItem
{
Id = otherListItem[i].Id,
StringValue = otherListItem[i].Name
};
sampleItems.Add(si);
}
List sampleItems=new List();
for(int i=0;i
List sampleItem=new List();
foreach(otherListItem中的var项)
{
添加(新的sampleItem{Id=item.Id,StringValue=item.Name});
}
在for循环中,尝试用以下内容替换现有内容:
SampleItem item;
item.Id = otherListItem[i].Id;
item.StringValue = otherListItem[i].StringValue;
sampleItem.add(item);
使用
List<SampleItem> sampleItem = (from x in otherListItem select new SampleItem { Id = x.Id, StringValue = x.Name }).ToList();
List sampleItem=(从otherListItem中的x选择新的sampleItem{Id=x.Id,StringValue=x.Name});
执行以下操作:
List<SampleItem> sampleItem = new List<SampleItem>();
for (int i = 0; i < otherListItem.Count; i++)
{
sampleItem.Add(new SampleItem {Id= otherListItem[i].Id, StringValue=otherListItem[i].Name});
}
List sampleItem=new List();
for(int i=0;i
由于从未将任何项目添加到sampleItem列表中,因此会出现错误
更好的方法是使用Linq(未经测试)
//使用system.linq
otherListItem.ToList().Foreach(item=>{
sampleItem.Add(new sampleItem{
});
这发生在我身上,因为我在Mapper类中映射了两次列。
在我的例子中,我只是简单地分配列表元素。
e、 g
哇!谢谢各位。只有一分钟,我得到了8个回复!这就是为什么我喜欢这个地方!我试过了,效果很好:)
List<SampleItem> sampleItem = (from x in otherListItem select new SampleItem { Id = x.Id, StringValue = x.Name }).ToList();
List<SampleItem> sampleItem = new List<SampleItem>();
for (int i = 0; i < otherListItem.Count; i++)
{
sampleItem.Add(new SampleItem {Id= otherListItem[i].Id, StringValue=otherListItem[i].Name});
}
var sampleItem = otherListItem.Select(i => new SampleItem { Id= i.Id, StringValue = i.Name}).ToList();
otherListItem.ToList().Foreach(item=>{
sampleItem.Add(new sampleItem{
});
itemList item;
ProductList product;
item.name=product.name;
item.price=product.price;