Как имитировать string.Format () в моем собственном методе?

У меня есть объект с помощью специального метода WriteLine (string) . Примерно так:

public void WriteLine(string text)
{
    this.StringList.Add(text);
}

Как проще всего дублировать функциональность string.Format () этим методом? Например: В настоящее время я часто делаю следующее:

myObj.WriteLine(string.Format("Hello, {0}", name));

Если вы создаете новое консольное приложение, их версия метода WriteLine () делает именно то, что я предпочел бы делать:

Console.WriteLine("Hello, {0}", name);

Они исключить необходимость вызова string.Format () . Легко ли как-то заставить ваш метод принять это? Или мне придется создать тысячу перегрузок методов? Примерно так:

public void WriteLine() { ... }

public void WriteLine(string text) { ... }

public void WriteLine(string text, object arg0) { ... }

public void WriteLine(string text, object arg0, object arg1) { ... }

public void WriteLine(string text, object arg0, object arg1, object arg2)
{
    this.StringList.Add(string.Format(text, arg0, arg1, arg2));
}

// etc etc etc

Это единственный логичный способ сделать это? Любые предложения приветствуются:)

39
задан Chev 14 September 2011 в 19:47
поделиться