私は頭が良くて、このコード サンプルのようなものを書きたいと思っていました。また、2 回目の列挙を行わずに配列を埋めるためのクリーンで効率的な方法のようにも思えました。
int i = 0;
var tickers = new List<string>();
var resultTable = results.Select(result => new Company
{
Ticker = tickers[i++] = result.CompanyTicker,
});
これを行う別の方法はあまり気にしません。なぜなら、これは明らかに for ループで簡単に達成できるからです。このスニペットが機能しない理由tickers.Count = 0
、つまり、コードの実行後、100 以上の結果があるにもかかわらず、もっと興味があります。この予期しない動作が発生する理由を誰か教えてもらえますか?