Ну, вы могли бы использовать делегатов, но я бы не стал.Я бы просто использовал:
if (dataTable == null)
{
dataTable = new DataTable();
}
else
{
dataTable.Clear();
}
Это лот более понятный с точки зрения того, что он делает, IMO.
Вот версия делегата во всей ее отвратительности:
dataTable = dataTable == null ? new DataTable() :
((Func<DataTable>)(() => { dataTable.Clear(); return dataTable; }))();