Рассматривали ли вы государственную модель?
Создайте подкласс вашей таблицы (переменную таблицы) и добавьте виртуальный метод (возможно, Update ()?), Который вы затем переопределите в каждом конкретном типе таблицы. Это полностью удалит else if, как только станет:
table.Update();
Передайте любые объекты, которые вам нужны, для этого вызова, а затем получите значение обратно из таблицы (поскольку он может обновить свое собственное свойство даты в рамках своей реализации Update ()).
Я прошу прощения, если у меня неправильный конец палки, но я не уверен на 100%, что вы просите, чтобы быть честным.