Это можно сделать на БД, как продемонстрировал @Martin.Проблема в вашем клиенте.У DbCommand есть проблемы, связанные с NULL, это одна из причин, по которой они создали Linq To Sql.
Я предлагаю вам попробовать что-то вроде этого:
if(parameter_is_not_null)
db.AddInParameter(dbCommand, "staffId", DbType.String, staffId.Text);
else
db.AddInParameter(dbCommand, "staffId", DbType.String, DBNull.Value);