为什么这会抛出一个 System.FormatException
本文关键字:一个 System FormatException 为什么 | 更新日期: 2023-09-27 18:33:55
这是string.Format
上的错误还是什么?
// Act
string l = "This is an UnitTest embedded resource.";
string r = "Please do not remove or change. Sincerely yours, {0}".FormatWith(model.Username);
string expected = "['r'n't{0}'r'n'r'n'r'n]'r'n{'r'n't'r'n't{1}'r'n'r'n}".FormatWith(l, r);
FormatWith
方法只是句法糖的扩展。
public static string FormatWith(this string text, params object[] args)
{
return string.Format(text, args);
}
您的问题是尝试在格式字符串中使用{
和}
。它们需要被转义,否则它们将被视为格式变量。
将最后一行更改为:
string expected = "['r'n't{0}'r'n'r'n'r'n]'r'n{{'r'n't'r'n't{1}'r'n'r'n}}".FormatWith(l, r);