robię wykres że pokrycie "1930-1940", "1940-1950", "1950-1960", "1960-1970", ...
Czy to najlepszy sposób na reprezentowanie dziesięcioleci w TimeSpan?
chcę reprezentować to z DateTime
i Timespan
, ale nie jestem pewien, jak zrobić TimeSpan
, i trudno sprawdzić, czy moje timespans są poprawne.
Czy w ten sposób powinienem użyć TimeSpan
, czy to się nakłada? Jeśli to się nakłada, to jak mogę to naprawić?
List<DateTime> list1 = new List<DateTime>();
List<TimeSpan> list2 = new List<TimeSpan>();
int startYearInt = 1930;
int times = 0;
const int intervalSize = 10;
for (int i = startYearInt; i < 2020; i += intervalSize)
{
DateTime sYear = new DateTime(startYearInt + (intervalSize * times++), 1, 1);
TimeSpan period = (sYear.AddYears(intervalSize)) - sYear;
list1.Add(sYear);
list2.Add(period); // <<-- Don't know if if this is correct?
}
EDYCJA: Mam to również. A jeśli Mój przedział czasowy jest zbyt mały lub trwa do końca, może powodować pewne problemy.
public bool IsInsidePeriod(DateTime dt)
{
return dt >= FromYearDateTime && dt < FromYearDateTime.Add(periodTimeSpan);
}
dlaczego po prostu nie przedstawiają je jako wskazówki? –
Dlaczego DateTime _i_ TimeSpan? Wszystko czego potrzebujesz to n + 1 wartości DateTime. –
'TimeSpan' jest prosty i ilość Czas nie jest związany z żadnymi punktami w czasie (10-letni okres to po prostu 10-krotna rozpiętość) lata temu lub tysiąc lat temu). – Oded