I'm not that surprised, really.
1) You convert from a string to a DateTime:
DateTime strDateTime = System.Convert.ToDateTime(item.TerminationDate);
2) You convert the DateTime back to a string:
string conv=System.Convert.ToString (strDateTime);
3) You convert the string back to a DateTime:
dateToSave = DateTime.Parse(conv);
4) You then test if the string you just used would have thrown an exception:
if (!String.IsNullOrEmpty(conv))
5) This won't compile:
dateToSave = System.DBNull.Value
Perhaps you need to think this a bit, as there are a number of problems here:
1) It could fail if the
item.TerminationDate
is not a valid date
2) You don't need to keep transfering between strings and DateTime.
3) You should check before you use, rather than after.
4) You can only assign DateTime values to a DateTime.
What are you actually trying to do?