Есть только отступы и форматирование ... Так что простой способ, как вы сказали, использовать "John".ToUpper()
или "John".ToLower()
.
Другим решением может быть создание пользовательского IFormatProvider
для предоставления желаемого формата строки.
Вот так будут выглядеть IFormatProvider
и строка. Вызов формата.
public class CustomStringFormat : IFormatProvider, ICustomFormatter
{
public object GetFormat(Type formatType)
{
if (formatType == typeof(ICustomFormatter))
return this;
else
return null;
}
public string Format(string format, object arg, IFormatProvider formatProvider)
{
string result = arg.ToString();
switch (format.ToUpper())
{
case "U": return result.ToUpper();
case "L": return result.ToLower();
//more custom formats
default: return result;
}
}
}
И звонок будет выглядеть так:
String.Format(new CustomStringFormat(), "Hi {0:U}", "John");