Jana tatasusunan julat tarikh atau senarai dalam C#
Apabila menjana berbilang siri data dalam carta yang menggunakan tarikh sebagai paksi X, adalah penting untuk mempunyai senarai tarikh lengkap yang meliputi keseluruhan julat. Ini memastikan bahawa semua siri mempunyai nilai tarikh yang konsisten, walaupun mereka tidak mempunyai data untuk semua tarikh.
Kaedah LINQ
Cara yang cekap ialah menggunakan LINQ:
<code class="language-csharp">Enumerable.Range(0, 1 + end.Subtract(start).Days) .Select(offset => start.AddDays(offset)) .ToArray();</code>
Kod ini mencipta senarai tarikh bermula pada permulaan julat tarikh (mula) dan meningkat sekali sehari sehingga penghujung julat (tamat) dicapai.
Untuk kaedah gelung
Sebagai alternatif, anda boleh menggunakan gelung for:
<code class="language-csharp">var dates = new List<DateTime>(); for (var dt = start; dt <= end; dt = dt.AddDays(1)) { dates.Add(dt); }</code>
Gelung ini mencipta senarai tarikh dengan cara yang sama seperti kaedah LINQ.
Nilai isian
Untuk mengisi nilai lalai siri tarikh yang tiada, anda boleh menghitung semua tarikh dalam julat penuh dan mengisinya:
<code class="language-csharp">var paddedSeries = fullDates.ToDictionary(date => date, date => timeSeries.ContainsDate(date) ? timeSeries[date] : defaultValue);</code>
Kod ini mencipta kamus yang kuncinya ialah tarikh dan nilainya ialah data. Jika tarikh wujud dalam siri, nilai yang sepadan akan diambil jika tidak, nilai lalai ditetapkan.
Atas ialah kandungan terperinci Bagaimana untuk Menjana Tatasusunan atau Senarai Julat Tarikh dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!