public ValueTask ConvertAsync()

in src/DotNetWorker.Core/Converters/DateTimeConverter.cs [14:33]


        public ValueTask<ConversionResult> ConvertAsync(ConverterContext context)
        {
            if (!IsValidTargetType(context) || context.Source is not string source)
            {
                return new ValueTask<ConversionResult>(ConversionResult.Unhandled());
            }

            if ((context.TargetType == typeof(DateTimeOffset) || context.TargetType == typeof(DateTimeOffset?))
                && DateTimeOffset.TryParse(source, out var parsedDateTimeOffset))
            {
                return new ValueTask<ConversionResult>(ConversionResult.Success(parsedDateTimeOffset));
            }

            if (DateTime.TryParse(source, out DateTime parsedDate))
            {
                return new ValueTask<ConversionResult>(ConversionResult.Success(parsedDate));
            }

            return new ValueTask<ConversionResult>(ConversionResult.Unhandled());
        }