记录的扩展方法.一个好主意?

Vic*_*aci 3 c# string logging extension-methods

在您看来,以下扩展方法的优缺点是什么?

static class Log
{
    public static string AddToLog(this string input)
    {
        Console.WriteLine(input);
        return input;
    }

    public static string AddToLog(this string input, string format)
    {
        Console.WriteLine(format, input);
        return input;
    }
}
Run Code Online (Sandbox Code Playgroud)

使用场景:

class Program
{
    static void Main(string[] args)
    {
        string tableName = "Bills".AddToLog("Default table name is {0}");

        "Starting...".AddToLog();
        "Creating table".AddToLog();
    }
}
Run Code Online (Sandbox Code Playgroud)

Gra*_*ton 11

好吧,他们一开始就是静止的,这将使测试变得更加困难,并且会更紧密地结合一切.

我个人也认为是这样的

Logger.Write("Starting..");
Run Code Online (Sandbox Code Playgroud)

比...更容易理解

"Starting...".AddToLog();
Run Code Online (Sandbox Code Playgroud)