Updated Field builder, to allow for "Empty" fields and values.
If you send "_ _" via the discord rest API, it will display as a blank field.
Updated the Value setting to use String.IsNullOrWhiteSpace instead of String.IsNullOrEmpty, because passing a string full of spaces through the API will cause errors as well. However, "_ _" works perfectly.
if (string.IsNullOrWhiteSpace(value)) throw new ArgumentException($"Field name must not be null, empty or entirely whitespace.", nameof(Name));
if (value.Length > MaxFieldNameLength) throw new ArgumentException($"Field name length must be less than or equal to {MaxFieldNameLength}.", nameof(Name));
_name = value;
if (string.IsNullOrWhiteSpace(value))
_name = "_ _";
else if (value.Length > MaxFieldNameLength)
throw new ArgumentException($"Field name length must be less than or equal to {MaxFieldNameLength}.", nameof(Name));
else
_name = value;
}
}
}
}
@@ -251,9 +254,12 @@ namespace Discord
set
set
{
{
var stringValue = value?.ToString();
var stringValue = value?.ToString();
if (string.IsNullOrEmpty(stringValue)) throw new ArgumentException($"Field value must not be null or empty.", nameof(Value));
if (stringValue.Length > MaxFieldValueLength) throw new ArgumentException($"Field value length must be less than or equal to {MaxFieldValueLength}.", nameof(Value));
_value = stringValue;
if (string.IsNullOrWhiteSpace(stringValue))
_value = "_ _";
else if (stringValue.Length > MaxFieldValueLength)
throw new ArgumentException($"Field value length must be less than or equal to {MaxFieldValueLength}.", nameof(Value));