powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / LINQ: объединение значение из конкретного столбца отобранных данных
4 сообщений из 4, страница 1 из 1
LINQ: объединение значение из конкретного столбца отобранных данных
    #38431606
dred_d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Есть LINQ-запрос к таблице, которые возвращает ряд строк с текстовыми значениями электронных адресов (см. ниже).
Есть ли возможность в самом LINQ-запросе объединить в переменную строки через разделитель, например, “;” объединить все текстовые значения с отбираемого поля таблицы, то-есть, если отобрались:
1@gmail.com
2@gmail.com
3@gmail.com
получить в результате выполнения LINQ строчку “1@gmail.com; 2@gmail.com; 3@gmail.com”?

Код: c#
1.
2.
3.
4.
DataTable loadDt = (DataTable)((BindingSource)deGridViewLoad.GridControl.DataSource).DataSource;
var loadMails = (from loadMail in loadDt.AsEnumerable()
                      where loadMail["AN8"].ToString().Trim() == 164488.ToString().Trim()  // поле, которое считывается с Excel
                      select loadMail["E-MAIL"].ToString().Trim());



--
MS SQL SERVER 2008R2 (RTM) 10.50.1600.1 (X64) + C# .Net 3.5/4 + Delphi 5\7
...
Рейтинг: 0 / 0
LINQ: объединение значение из конкретного столбца отобранных данных
    #38432233
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aggregate
...
Рейтинг: 0 / 0
LINQ: объединение значение из конкретного столбца отобранных данных
    #38432518
Фотография LR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
LINQ: объединение значение из конкретного столбца отобранных данных
    #38432843
dred_d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо. Работает и так и так:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
           DataTable mainDt = (DataTable)((BindingSource)deGridViewMain.GridControl.DataSource).DataSource;
           var mainMails = (from mainMail in mainDt.AsEnumerable()
                            where mainMail.Field<int>("MLAN8") == 164488
                            select mainMail.Field<string>("MLEMAIL").ToString().Trim());
           string strMails = "";
           strMails = mainMails.Aggregate((a, b) => a + "; " + b);
           //strMails = string.Join("; ", Enumerable.ToArray<string>(mainMails));

           MessageBox.Show(strMails);
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / LINQ: объединение значение из конкретного столбца отобранных данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]