如何为string.Format设置命名参数?

时间:2010-10-30 15:24:09

标签: c# string named-parameters

调用时出现C#错误:

string.Format(format:"abbccc", 1,22);

错误是“在指定了所有固定参数后,必须出现命名参数规范”

我该如何解决这个问题?

[编辑]

我更喜欢使用命名参数。

2 个答案:

答案 0 :(得分:16)

如果要指定format参数的名称,还必须指定以下参数的名称:

string.Format(format:"abbccc", arg0:1, arg1:22);

这不是很有用,因为名字“arg0”和“arg1”对论据没有任何说明。

此外,只有“arg2”的重载,所以如果你有更多的参数,你必须把它们放在一个数组中来命名参数:

string.Format(format:"abbccc", args:new object[] { 1, 2, 3, 4 });

您可以简单地跳过命名参数:

string.Format("abbccc", 1, 22);

答案 1 :(得分:1)

就我而言,我必须清理并重建解决方案,这会导致错误消失。发生了什么事,我添加了这样的论点

sched.ScheduleJob(Jobdetail:job,trigger);

我收到错误的触发器,所以我删除了,JobDetail:,语法错误消失但是在复杂化时我仍然收到错误

  

命名参数规范必须出现在所有固定参数之后   已经指定

我清理了解决方案并重建,错误消失了。