有没有一种(简单/预定义的)方法可以使用相同的string.format
机制,但使用名称而不是数字?我想使用相同的格式化系统,但使其对最终用户更友好。现在,我的用户在从列表中选择了他们想要使用的参数后,正在输入{0} {1:Minutes}
,但一旦你开始使用超过2个参数,就会变得非常不可读和混乱。
例如,想要执行{Now}
和{Now:Minutes}
并将其替换为DateTime。现在,对于{Now}
和DateTime.Now.Minutes
,使用{Now:Minutes}
的IFormatable。这样,用户就不需要再从列表中选择项目,而只需键入/插入参数的名称。
在c#-6.0中,您可以使用
string result = $"Time: {DateTime.Now}";
在以前的版本中,请参阅
- 如何替换字符串模板上的令牌