Как сократить код не используя цикл for

144
29 апреля 2018, 19:31

Есть массив ключ=значение string, значение имеет разделители , | после .Split остаются начальные пробелы. Убрать нужно только начальные пробелы, собственно как сократить этот код ? P/s метод рабочий, интересует только сокращение.

var dict = new Dictionary<string, string[]>();
foreach (var p in data)
{
    var d = p.Values.Split(new char[] { ',', '|'}, StringSplitOptions.RemoveEmptyEntries);
    for (int i = 0; i < d.Length; i++)
    {
        d[i] = d[i].TrimStart();
    }
    dict.Add(p.Name, d);
}
Answer 1
var dict = data.ToDictionary(
    k => k.Name,
    p => p.Values.Split(new char[] { ',', '|'}, StringSplitOptions.RemoveEmptyEntries)
                 .Select(v => v.TrimStart())
                 .ToArray());

Может где скобки потерял.

READ ALSO
Получение текста из TextBox в потоке

Получение текста из TextBox в потоке

Работаю с xNet, возникла проблемаНужно получить информацию из combobox1 + textbox1 в потоке

187
Способы создания гибкого ПО

Способы создания гибкого ПО

В общем, такая проблема: У меня есть семейство классов, очень близких по смыслу

135