Witam
Panowie i Panie mam coś takiego do sprawdzenia.
Metoda powinna zwracać false gdy miesiąc w Date jest późniejszy(następny) o 1 miesiąc od Id:
Id = 1.12.2016
Date = 1.01.2017.
Jeśli data Date jest wcześniejsza o jeden miesiąc tzn gdy wartość ma np 1.11.2016 lub 29.11.2016 lub 28.11.2015 to wtedy true.
Drugi case:
Jeśli data Date jest późniejsza od Id o 2 miesiące lub więcej wtedy true np: 1.02.2017 lub 1.03.2018 itp itd..
Co o tym sądzicie ?
private bool CheckWrongDate(DateTime Id, DateTime Date)
{
bool isWrong = true;
if (Id.Ticks <= Date.Ticks)
{
var difference = Math.Abs((Id - Date).TotalDays);
var differenceDate = Id.AddDays(difference);
var correctMonth = Id.AddMonths(1);
if (differenceDate.Month == correctMonth.Month && differenceDate.Year == correctMonth.Year)
{
isWrong = false;
}
}
return isWrong;
}
W razie pytań niejasności proszę dać znać:) Przepraszam za brzydkie nazewnictwo zmiennych. Jeśli macie lepsze sugestie to chętnie przeczytam :)
Pozdrawiam
Łukasz