C# 如何 return 命名元组 List<(int row, string message)>

C# How to return named tuple List<(int row, string message)>

我正在尝试从函数中 return 命名元组,但出现错误。这是示例代码。

public List<(int row, string message)> IsAnyTagNull()
{
    List<Tuple<int, string>> rows = new List<Tuple<int, string>>();

    for (int row = rowindex; row < (range.RowCount + (rowindex - 1)); row++)
    {
        rows.Add(new Tuple<int, string>(row, "Cell Tag is null of row " + row));
    }
    return  rows
}

以上代码return错误

Cannot implicitly convert type 'System.Collections.Generic.List<System.Tuple<int, string>>' to 'System.Collections.Generic.List<(int row, string message)>'

因为List<Tuple<int, string>>不同于List<(int row, string message)>

您可以尝试创建一个 List<(int row, string message)> 类型的集合,而不是 List<Tuple<int, string>>

public List<(int row, string message)> IsAnyTagNull()
{
    List<(int row, string message)> rows = new List<(int row, string message)>();
    rows.Add((1, "Cell Tag is null of row "));

    return rows;
}

您应该这样定义您的列表:var rows = new List<(int row, string message)>();

类型 Tuple<int, string> 被解释为 (int Item1, string Item2)