我有以下代码(我是初学者);LINQ to Object Basic
string myVar = "abcd";
var myQuery = from x in myVar select x;
MessageBox.Show(string.Join("\n", myQuery));
我想要这样的结果;
1 a
2 b
3 c
4 d
请提出一些提示。
谢谢。
我有以下代码(我是初学者);LINQ to Object Basic
string myVar = "abcd";
var myQuery = from x in myVar select x;
MessageBox.Show(string.Join("\n", myQuery));
我想要这样的结果;
1 a
2 b
3 c
4 d
请提出一些提示。
谢谢。
您应该使用Select
运算符超载,它接受项目的索引。 (可惜这不是在查询语法提供):
String.Concat(myVar.Select((ch,i) => $"{i + 1} {ch}\n"))
更新:@Mattew正确地注意到,该代码将在年底增加额外\n
。如果不好,那么你应该使用String.Join
。也可以考虑使用Environment.NewLine
从而为Windows平台的新线串\r\n
:
String.Join(Environment.NewLine, myVar.Select((ch,i) => $"{i + 1} {ch}"))
杰森,这是学校的工作/家庭作业的问题?如果是这样,我想建议你先不用LINQ来做,这样你就能理解幕后发生了什么。 – Joe
@Joe ..谢谢你的提示。我可以在没有LINQ的情况下处理它。现在我在Albabari兄弟的第8章“LINQ”。 (我在第385页发现了第二个参数,但它缺少“仅Fluent语法”)。 – Jason
“本地查询”是指流利的语法? – Jason