2016-12-01 5 views
1

Я написал эту строку кода. Он не читается. Есть ли умный способ разбить его на несколько строк кода < Длина 80 или 100 символов?C# длинная строка форматирования кода

Console.WriteLine(String.Join("\n", testResults.Select(row => String.Join("|", row.Select(column => String.Format("{0,20}", column.ToString()))))));

+4

http://codereview.stackexchange.com –

+0

Можете ли вы определить умный? –

+0

один совет: вместо последнего String.Format следует использовать столбец. ToString ("..."). –

ответ

5

Я предлагаю отделяя запрос сам и его окончательное представление (выход консоли):

// Query: what to output 
var testReport = testResults 
    .Select(row => String.Join("|", row 
    .Select(column => String.Format("{0,20}", column)))); // .ToString() is redundant 

// Representation: how to output (print on the console in one go) 
Console.WriteLine(String.Join(Environment.NewLine, testReport)); 
-1

Да .. экстракт row.Select в переменную на строку выше и использовать. Также выведите testResults.Select таким же образом.

+1

Почему downvotes ?? Этот ответ почти точно так же, как и другие, только код отсутствует. – gmn

2

Это должен быть самый короткий путь, если вы не хотите разделить назначение. Но я бы предложил разбить его, так что лучше читать.

Console.WriteLine(String.Join("\n", 
       testResults.Select(
        row => String.Join("|", row.Select(column => String.Format("{0,20}", column.ToString()))))));