首页 > 解决方案 > 循环循环时 C# 中的“无法分配 Add,因为它是一个方法组”错误

问题描述

您好,现在当它循环通过时,我希望它添加来自每个站点的信息。目前它只是覆盖它

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)"
            };
    }
}

当我做model.OffReportColumns.Add = new List<string>()

我收到错误无法分配添加,因为它是一个方法组

我在想我只是语法错误,那么正确的语法是什么?

标签: c#linq

解决方案


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)"
        });
    }
}

或者您可以将属性设置为新列表

foreach (Site s in sites)
{

    foreach (OffSiteItemDetails d in s.ItemDetails)
    {

        model.OffReportColumns = new List<string>()
        {
            s.Name,
            "",
            "",
            "Average Cost",
            "",
            "",
            "Average Cost (With labour)"
        };
    }
}

推荐阅读