В .NET идиома Environment.NewLine
- это System.String
, которая состоит из надлежащих System.Char
(s) для завершения строки текста, поэтому:
System.Diagnostics.Debugger.Log(0, null, t[0] + Environment.NewLine);
[Обновлено 2015-05-07]
Размышляя об этом несколько лет спустя, я чувствую, что, по крайней мере, чуть-чуть сбросил мяч (хотя я делаю думаю, что важно иметь возможность делать NewLine низкого уровня) без необходимости иногда драться с языком, поэтому мне также нравится оригинальный ответ ...)
Прежде всего, Дэвид Браун дал хороший ответ ниже: вместо него использовали System.Diagnostics.Debug.WriteLine
(и Write
). Это является хорошим решением для этого, особенно в случае OP, так как другие параметры вызова даже не используются; и вызовы Debug.Write
/ WriteLine
выглядят так (используя для примера исходные вызовы OP, предполагая в качестве примера, что первоначальный первый параметр OP responseFromServer
уже завершен, а второй необходим для завершения):
System.Diagnostics.Debug.Write(responseFromServer);
System.Diagnostics.Debug.WriteLine(t[0]);
Легко, peasy.
Хотя еще лучше, почему бы не Trace
?
Я просто укажу вам этот вопрос о переполнении стека здесь но вот суть.
Вы можете настроить в своем App.config, но, конечно, вы также можете просто создать все это программно, поскольку разделы app.config просто создают объекты!
Что-то вроде:
⋮
<trace>
<!-- note: notional notation only -->
<add name="consoleLog" logLevel="debug" enabled="" type="⋯
<add name="netLog" logLevel="verbose" enabled="false" addr="rdp://127.0.0.1:1935/nothing/stream" type="⋯
<add name="fileLog" logLevel="errors" enabled="true" file="c:\boots.ini" type="⋯
</trace>
⋮
и тогда ваш код вызывает Trace()
точно так же как Debug()
.
System.Diagnostics.Trace.Write(responseFromServer);
System.Diagnostics.Trace.WriteLine(t[0]);
Да, это многоцелевой; и вы можете настроить его как многоцелевой, и вы можете использовать встроенные типы System.Diagnostics
Trace
(например, трассировщик Console
, если вы хотите печатать на экране, например), или вы можете создать ваши собственные пользовательские типы по мере необходимости. Красивая!
Последнее слово: и в Debug, и в Trace есть много вспомогательных функций, которые делают любые записи, которые вы делаете, более символичными; WriteLineIf, TraceError и т. Д., И стоит поиграть с ними, пока вы не выясните, почему они там есть. Это почти гарантирует, что чем больше вы используете их, тем больше полезных вы найдете их. ♡