public static string SecureFormat(IFormatProvider formatProvider, string format, params object[] args)
{
if (format == null)
{
// no format string
return string.Empty;
}
// no arguments, just use format
if (args == null)
{
return format;
}
try
{
return string.Format(formatProvider, format, args);
}
catch (FormatException)
{
string result = "!!! FORMAT ERROR !!!! " + format + ": ";
return args.Aggregate(result, (current, arg) => current + (arg + ", "));
}
}