C# 如何获取嵌套列表中元素的索引

C# 如何获取嵌套列表中元素的索引,c#,linq,C#,Linq,我有这样的课: public class Payment { public List<string> Base { get; set; } public List<string> Interest { get; set; } } 但它不起作用。写这篇文章开始有意义了,我需要从列表中选择每个x,但我不知道如何写LINQ,在我看来这应该是可行的。这是你想要的吗 RpBase.DataSource = PymentsList.SelectMany(x=>

我有这样的课:

public class Payment
{
    public List<string> Base { get; set; }
    public List<string> Interest { get; set; }
}
但它不起作用。写这篇文章开始有意义了,我需要从
列表中选择每个
x
,但我不知道如何写
LINQ
,在我看来这应该是可行的。

这是你想要的吗

RpBase.DataSource = PymentsList.SelectMany(x=>x.Base)
                               .Select((x,i)=>new { Base = x, Id =i}) 
这是你想要的吗

RpBase.DataSource = PymentsList.SelectMany(x=>x.Base)
                               .Select((x,i)=>new { Base = x, Id =i}) 

你可能想要那样的东西

RpBase.DataSource = PymentsList.Base.Select((x,i) => new { Base = x, Id = i });
如果
PymentsList
是一个
付款列表
,请使用
。选择many(x=>x.Base)
而不是
.Base


编辑:@Tim.Tang更快地回答了问题^^

你可能想要这样的答案

RpBase.DataSource = PymentsList.Base.Select((x,i) => new { Base = x, Id = i });
如果
PymentsList
是一个
付款列表
,请使用
。选择many(x=>x.Base)
而不是
.Base


Edit:@Tim.Tang更快地回答了这个问题^^

你能澄清一下你的
数据源应该是什么吗?对于付款列表中的所有付款,是来自
Base
的所有字符串,还是仅针对单个付款,是来自
Base
的字符串列表?您能否澄清您的
数据源应该是什么?对于您的付款列表中的所有付款,它是来自
Base
的所有字符串,还是仅仅是来自
Base
的单个付款的字符串列表?
LINQ
令人惊讶:您使用的越多,您越意识到它的魅力
LINQ
令人惊讶:您使用的越多,您就越意识到它的魅力