public class HolidayService
{
private DateTime[] _holidays;
public DateTime[] Holidays
get
return _holidays;
}
set { _holidays = value; }
public bool IsHoliday(DateTime date)
if (_holidays != null)
DateTime matchDate = date.Date;
foreach (DateTime test in Holidays)
if (test.Date.Equals(matchDate))
return true;
return false;
internal class Program
private static void Main(string[] args)
WindsorContainer container = new WindsorContainer(new XmlInterpreter());
HolidayService holidayService = container.Resolve<HolidayService>();
DateTime xmas = new DateTime(2007, 12, 25);
DateTime newYears = new DateTime(2008, 1, 1);
if (holidayService.IsHoliday(xmas))
Console.WriteLine("merry xmas!");
else
Console.WriteLine("xmas is only for management!");
if (holidayService.IsHoliday(newYears))
Console.WriteLine("happy new year");
Console.WriteLine("new year, you haven't done all the work for last year!");
Console.Read();
<configuration>
<configSections>
<section name="castle"
type="Castle.Windsor.Configuration.AppDomain.CastleSectionHandler, Castle.Windsor" />
</configSections>
<castle>
<components>
<component id="holidays.service" type="IoC.Tutorials.Part2.HolidayService, IoC.Tutorials.Part2" >
<parameters>
<Holidays>
<array>
<item>2007-12-24</item>
<item>2007-12-25</item>
<item>2008-1-1</item>
</array>
</Holidays>
</parameters>
</component>
</components>
</castle>
</configuration>