如何在不使用参数关键字的情况下替换方法签名以接受参数化字符串。我在 Console.WriteLine() 中看到了这个功能。 例如
public void LogErrors(string message, params string[] parameters) { }
场景:
我有一个名为
的错误登录函数LogErrors(string message)
{
//some code to log errors
}
我在程序的不同位置以错误消息被硬编码的方式调用此函数。例如:
LogError("Line number " + lineNumber + " has some invalid text");
我打算将这些错误消息移动到资源文件中,因为稍后我可能会更改程序的语言(本地化)。在那种情况下,我如何编程以接受基于大括号的参数化字符串?例如:
LogError("Line number {0} has some invalid text", lineNumber)
将写成:
LogError(Resources.Error1000, lineNumber)
Error1000 将是“行号 {0} 有一些无效文本”
最佳答案
只需在您的函数中调用 String.Format
:
string output = String.Format(message, parameters);
关于c# - .NET C# 中的参数化字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7531040/