错误索引(从零开始)必须大于或等于零且小于参数列表的大小

时间:2015-11-18 13:54:52

标签: c# string formatting

我有以下代码:

a = "Return {1}"
ItalicsCloseTag = "</i>";
ItalicsOpenTag = "<i>";
b = "Delete {0}?"
c = string.Format(b, string.Concat(ItalicsOpenTag, HttpUtility.HtmlEncode(a), ItalicsCloseTag));

我在上述声明中得到以下错误。

 System.FormatException was unhandled by user code
 Additional information: Index (zero based) must be greater than or equal to zero and less than the size of the argument list.

我试过

b = "Delete {{{0}}}?"

并获得FormatException异常和

b = "Delete {{0}}?"

然后退出&#34;删除{0}?&#34;

帮助?我基本上都在寻找输出&#39;删除返回{1} 的陈述?&#39;

1 个答案:

答案 0 :(得分:1)

无论你想做什么,我都无法想象代码是最好的方式。

实际上,“c”最终为Delete <i>Return {1}</i>?

我假设您理解string.format并希望“{0}”和“{1}”成为占位符,您可以在其中放置一些合理的值?

string.Format("<i>Delete {0} Return {1}</i>", valueFor0, valueFor1);这样的东西是什么?