c# - .NET C# 中的参数化字符串

标签 c# .net string

如何在不使用参数关键字的情况下替换方法签名以接受参数化字符串。我在 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/

相关文章:

C++:加入一个 WCHAR[] 数组?

php - 如何使用php获取字符串中以 '#'开头的单词?

string - 生成字符串和识别子字符串非常慢

c# - 玻璃表面上的发光标签控件

c# - 在 asp.net mvc 站点上收集统计信息?

c# - WCF 与 WCF 双工与套接字

c# - 添加 Crystal Report DLL 的引用

c# - MassTransit 6.0 中的 NLog 与 Autofac?

c# - 在 linq 'select new object {

c# - tcp/ip 接受不返回,但客户端返回