LINQについてですが、以下のようにリストを作成しようとしています。
max = 3; int itemNo = 0; var list = Enumerable .Range(0, max) .Select(c => itemNo = ItemMngSp.GetItems[c].itemID) .ToArray() ;
上記のようにかいたときに「c」の値にはRangeの0~の連番が入ると思われますが
その認識であっているでしょうか。
ItemMngSpには取得したい値をいれています。
同じように.Select(c => itemNo~の記述を入れるとOutOfRangのエラーがでてしまうので
使い方が間違っているかと思います。
知識不足で申し訳ないですが、上記の認識であっているか教えていただきたいと思います。
> その認識であっているでしょうか
> 使い方が間違っているかと思います
> 知識不足で申し訳ないですが、上記の認識であっているか教えていただきたいと思います
リファレンスに書かれていることが正しいので、認識が合っているか確認するにはリファレンスと見比べましょう。もしリファレンスの見方が分からない場合はその方法を知るところから始めてください。
https://docs.microsoft.com/ja-jp/dotnet/api/system.linq.enumerable.range?view=netcore-3.1
ItemMngSp.GetItems[c].itemID って何ですか? 定義不明のようです。 ItemMngSp とかでググっても出てこないので、自分だけが知らないということでもなさそうですけど・・・
c には 0 から数えて 3 つ、つまり 0 から 2 までの数値が入りますが、Select の使い方が怪しいので、間違っているのは ToArray の方ではないかと思います。