Экспорт двух разных списков в одну строку - PullRequest
0 голосов
/ 14 февраля 2020

У меня есть два разных списка, которые я хочу экспортировать в один CSV-файл в ASP. NET

string listToString1= string.Join(",", list1.ToArray());
string listToString2= string.Join(",", list2.ToArray());
string finalstring = "Collection ID" + listToString1+ "," + "Collection Title" + listToString2;

return File(new System.Text.UTF8Encoding().GetBytes(finalstring), "text/csv", "abcd.csv");

Здесь я получаю вывод вида:

Коллекция ID, id1, id2, id3

Заголовок коллекции, Заголовок1, Заголовок2, Заголовок3

Но я хочу, чтобы вывод был таким:

Идентификатор коллекции, Название коллекции id1, Title1 id2, Title2 id3, Title3

Здесь идентификаторы коллекции находятся в одном столбце, а заголовки коллекции находятся в одном столбце

1 Ответ

2 голосов
/ 14 февраля 2020

Вам нужен метод Zip:

List<string> list1 = new List<string>() { "Collection ID", "id1", "id2" , "id3" };
List<string> list2 = new List<string>() { "Collection Title", "Title1", "Title2", "Title3" };
var result = string.Join(" ",list1.Zip(list2, (f,l) => f + "," + l));

Вы должны убедиться, что вы добавили System.Linq в директиву using, хотя

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...