可以字符串格式序列以任何顺序出现
本文关键字:顺序 任何 字符串 格式 | 更新日期: 2023-09-27 18:20:55
我这里有一个字符串,
return string.Format("/abcXYZ990099/abc.aspx?IDA={0}&Name={1}&Teacher={2}",
ID, Name, Teacher);
现在,由于需求的变化,我也需要从数据库中获取"abcXYZ990099",有可能这样做吗,
return string.Format("/{3}/abc.aspx?IDA={0}&Name={1}&Teacher={2}",
ID, Name, Teacher, NewPropertyValue);
是的,你可以做到。但我会重新索引占位符,并重新排序params,以适应它们在返回字符串中出现的顺序,例如
return string.Format("/{0}/abc.aspx?IDA={1}&Name={2}&Teacher={3}",
NewPropertyValue, ID, Name, Teacher);
这是完全可以的,格式化项可以以任何顺序出现在字符串中。
例如,当格式字符串存储为本地化资源时,格式项可能按照特定于区域性的顺序。例如,要显示全名,可以使用:
String.Format(Resources.FullNameFormatString, firstName, middleName, lastName)
显示顺序可能取决于文化,例如:
en-US: "{0} {1} {2}" // First Middle Last
fr-FR: "{2}, {0} {1}" // Last, First Middle
您甚至可能有一个本地化版本,它不使用以下格式项之一(例如中间名):
"{2), {0}" // Last, First (middle name not used)
当然,在您的示例中,正如其他人所说,重新排序项目可能更有意义。
你可以。但是改变顺序,因为代码必须可以理解。
string.Format("/{0}/abc.aspx?IDA={1}&Name={2}&Teacher={3}",NewPropertyValue, ID, Name, Teacher);