Gets the end of quarter.

using System;
public class MainClass{
///

/// Gets the days in year.
///

/// The date. ///
public static int GetDaysInYear(DateTime date)
{
if (date.Equals(DateTime.MinValue))
{
return -1;
}

DateTime thisYear = new DateTime(date.Year, 1, 1);
DateTime nextYear = new DateTime(date.Year + 1, 1, 1);

return (nextYear – thisYear).Days;
}
///

/// Gets the end of quarter.
///

/// The date. ///
public static DateTime GetEndOfQuarter(DateTime date)
{
int daysInYear = GetDaysInYear(date);
double quarter = ((double)date.DayOfYear) / ((double)daysInYear);

if (quarter < 0.25) { return new DateTime(new DateTime(date.Year, 4, 1).Ticks - 1); } else if (quarter < 0.5) { return new DateTime(new DateTime(date.Year, 7, 1).Ticks - 1); } else if (quarter < 0.75) { return new DateTime(new DateTime(date.Year, 10, 1).Ticks - 1); } else { return new DateTime(new DateTime(date.Year + 1, 1, 1).Ticks - 1); } } } [/csharp]

Gets the end of month.

   
 
using System;
public class MainClass{
        /// <summary>
        /// Gets the end of month.
        /// </summary>
        /// <param name="date">The date.</param>
        /// <returns></returns>
        public static DateTime GetEndOfMonth(DateTime date)
        {
            return new DateTime(new DateTime(date.Year, date.Month + 1, 1).Ticks - 1);
        }
}

   
     


Gets the start of month.

   
 
using System;
public class MainClass{
        /// <summary>
        /// Gets the start of month.
        /// </summary>
        /// <param name="date">The date.</param>
        /// <returns></returns>
        public static DateTime GetStartOfMonth(DateTime date)
        {
            return new DateTime(new DateTime(date.Year, date.Month, 1).Ticks);
        }
}

   
     


Gets the days in year.

   
 
using System;
public class MainClass{
        /// <summary>
        /// Gets the days in year.
        /// </summary>
        /// <param name="date">The date.</param>
        /// <returns></returns>
        public static int GetDaysInYear(DateTime date)
        {
            if (date.Equals(DateTime.MinValue))
            {
                return -1;
            }

            DateTime thisYear = new DateTime(date.Year, 1, 1);
            DateTime nextYear = new DateTime(date.Year + 1, 1, 1);

            return (nextYear - thisYear).Days;
        }
}

   
     


Gets the days between.

   
 
using System;
public class MainClass{
        /// <summary>
        /// Gets the days between.
        /// </summary>
        /// <param name="first">The first.</param>
        /// <param name="last">The last.</param>
        /// <param name="inclusive">if set to <c>true</c> [inclusive].</param>
        /// <returns></returns>
        public static int GetDaysBetween(DateTime first, DateTime last, bool inclusive)
        {
            TimeSpan span = last - first;

            return inclusive ? span.Days + 1 : span.Days;
        }
}