public bool TryAppendNextParameter(ref QueryStringBuilder builder) { if (_enumerator is null || !_enumerator.MoveNext()) { return(false); } var currentValue = _enumerator.Current; if (currentValue is null) { // No-op to simulate appending a null parameter. return(true); } var formattedValue = _formatter !(currentValue); var encodedValue = Uri.EscapeDataString(formattedValue !); builder.AppendParameter(EncodedName, encodedValue); return(true); }