Silverlight的System.Diagnostics中没有Debug.Write()方法吗?

时间:2014-04-10 13:03:57

标签: c# silverlight system.diagnostics

Silverlight的System.Diagnostics中是否没有Debug.Write()方法?

有Debug.WriteLine(),但没有Debug.Write()。

有谁知道为什么会这样?

有没有人有简单的解决方法?我希望能够做到这样的事情:

修改

public static string OutAnd(this string input) {
    Debug.Write(input);
    return input;
}

(是的,如果我想流利地使用它,我会故意再次返回字符串。)我在非Silverlight上下文中使用此方法,它适用于快速调试。

谢谢!

2 个答案:

答案 0 :(得分:1)

我建议你使用循环附加到字符串构建器,如下所示:

StringBuilder stringBuilderInstance=new StringBuilder();
foreach(string stringValue in stringList)
{
    stringBuilderInstance.AppendFormat("{0}, ",stringValue);
}

然后在循环使用结束时,例如:

Debug.WriteLine(stringBuilderInstance.ToString())

答案 1 :(得分:0)

在你的情况下,我会用一个班来掌握中级的东西。

public sealed class WriteLine
{
    private readonly StringBuilder _accumulator = new StringBuilder();

    public WriteLine OutAnd(string text)
    {
        _accumulator.Append(text);
        return this;
    }

    public void ToDebug()
    {
        Debug.WriteLine(_accumulator.ToString());
    }
}

使用扩展方法

public static WriteLine OutAnd(this string input)
{
    var retval = new WriteLine();
    retval.OutAnd(input);
    return retval;
}

因此,在代码中,您可以执行以下操作:

"foo".OutAnd(" bar").OutAnd(" baz").OutAnd(" are lazy variable names").ToDebug();