When there is an exception you'll return null here, but then you'll get a cast exception at the calling site, since null can't be cast to `DateTime` or `TimeSpan` for instance. So with that in mind, maybe it would be better to make the method generic as in `GetCacheProperty<TPropertyType>` so that you can cast to the generic type or return the `default(TPropertyType)` in case of an exception.

On the other hand that would also mean that maybe `DateTime.MinValue` is shown in the UI because there was some kind of exception. So I wonder if it wouldn't be better to revert the properties back to the `object` type so that we can assign null and in case there is an exception, nothing will be shown either

what do you think?