Your accessors are back to front.
E.G. You have written
DateTime _hiredate;
public DateTime? hiredate
{
get
{
return _hiredate;
}
set
{
value = _hiredate;
}
}
But what you should have is
DateTime? _hiredate;
public DateTime? hiredate
{
get
{
return _hiredate;
}
set
{
_hiredate = value;
}
}
N.B. Notice that I have also had to make the member variable a nullable type too - this is required by the set accessor as you may be passing in a null value