in your proc make
@TerminateDateD smalldatetime = NULL
as a default value
in your code make your variable as nullable
smalldatetime? TerminationDate = null;
check for null before adding parameter
if(TerminationDate != null)
cmd.Parameters.AddWithValue("@TerminateDate", TerminationDate);