public static DateTime GetDateTime(this IReadOnlyStorage storage, string key, DateTime defaultValue = default) { if (storage == null) { throw new ArgumentNullException(nameof(storage)); } if (key == null) { throw new ArgumentNullException(nameof(key)); } var storedString = storage.GetString(key, null); if (storedString == null) { return(defaultValue); } return(DateTime.TryParse(storedString, DefaultFormatProvider, DateTimeStyles.None, out var dateTime) ? dateTime : defaultValue); }
/// <inheritdoc /> protected override string ReadValueFrom(IReadOnlyStorage storage) => storage.GetString(Name, DefaultValue);