Thursday 19 September 2013

Pick Birthdays between 2 dates irrespective of Year of Birth in C#

Many times we come across situations where we have to get birthdays of employees between 2 given dates irrespective of year of birth.

Here is a small piece of code in c# that does the trick !!


 public bool IsBirthdayBetweenDates(DateTime birthdate, DateTime beginDate, DateTime endDate)
        {
            if (birthdate != null & beginDate != null && endDate != null)
            {
                DateTime temp = birthdate.AddYears(beginDate.Year - birthdate.Year);

                if (temp < beginDate)
                {
                    temp = temp.AddYears(1);
                }
                return birthdate <= endDate && temp >= beginDate && temp <= endDate;
            }

            return false;
        }



Here  beginDate is the start date for search
endDate --> end date for search

The logic is simple,Just bring the birthdate to the year of begindate by adding years and then compare the dates.

--Deepti

No comments:

Post a Comment