&引用;无法分配Add,因为它是一个方法组;循环通过循环时C#出错
你好,现在每当它通过我希望它添加每个网站的信息周期。目前它只是覆盖它&引用;无法分配Add,因为它是一个方法组;循环通过循环时C#出错,c#,linq,C#,Linq,你好,现在每当它通过我希望它添加每个网站的信息周期。目前它只是覆盖它 foreach (Site s in sites) { foreach (OffSiteItemDetails d in s.ItemDetails) { model.OffReportColumns.Add new List<string>() { s.Name, "",
foreach (Site s in sites)
{
foreach (OffSiteItemDetails d in s.ItemDetails)
{
model.OffReportColumns.Add new List<string>()
{
s.Name,
"",
"",
"Average Cost",
"",
"",
"Average Cost (With labour)"
};
}
}
foreach(站点中的站点)
{
foreach(s.ItemDetails中的OffSiteItemDetails d)
{
model.OffReportColumns.Add new List()
{
s、 名字,
"",
"",
“平均成本”,
"",
"",
“平均成本(含人工)”
};
}
}
当我执行model.OffReportColumns.Add=new List()
我收到错误无法分配Add,因为它是一个方法组
我想我只是把它的语法搞错了,那么什么是正确的语法呢?如果你想把一个字符串列表添加到一个字符串列表中,我想你可能需要使用
AddRange
。也不要忘记括号
model.OffReportColumns = new List<string>();
foreach (Site s in sites)
{
foreach (OffSiteItemDetails d in s.ItemDetails)
{
model.OffReportColumns.AddRange(new List<string>()
{
s.Name,
"",
"",
"Average Cost",
"",
"",
"Average Cost (With labour)"
});
}
}
model.OffReportColumns=newlist();
foreach(站点中的站点)
{
foreach(s.ItemDetails中的OffSiteItemDetails d)
{
model.OffReportColumns.AddRange(新列表()
{
s、 名字,
"",
"",
“平均成本”,
"",
"",
“平均成本(含人工)”
});
}
}
或者可以将属性设置为新列表
foreach (Site s in sites)
{
foreach (OffSiteItemDetails d in s.ItemDetails)
{
model.OffReportColumns = new List<string>()
{
s.Name,
"",
"",
"Average Cost",
"",
"",
"Average Cost (With labour)"
};
}
}
foreach(站点中的站点)
{
foreach(s.ItemDetails中的OffSiteItemDetails d)
{
model.OffReportColumns=新列表()
{
s、 名字,
"",
"",
“平均成本”,
"",
"",
“平均成本(含人工)”
};
}
}
您可以选择:1-model.OffReportColumns.AddRange(new List()…)
或model.OffReportColumns=new List()…
OffReportColumns的类型是什么?您的示例代码无效。该错误是由于在添加后的新列表
周围没有大括号造成的。当我执行addRange时,会出现“对象引用未设置为对象实例”的错误,您显示的第二种方式是我最初使用它的方式。但是,使用这种方法,每次循环时它都会覆盖列表。您需要在第一次循环之前实例化OffReportColumns,例如model.OffReportColumns=new list()
,并使用AddRange
方法。@chris同意Sajid并修改了我的答案。在没有看到更多代码的情况下,很难给出可靠的解决方案。如果这个答案对你有效,请将它标记为你问题的答案。