sameralkhalili Ответов: 1

Rowfilter объекта DataTable, используя список в C#


привет

как я могу фильтровать свои данные с помощью RowFilter, получая значения из массива list ?

пожалуйста любая идея :)

Что я уже пробовал:

я пробую этот код :
DataTable dtemp = empm.myEmployee();
            DataView dvData = new DataView(dtemp);
            //
            List<string> list = new List<string>();
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                DataRow myrow = dt.Rows[i];
                list.Add(myrow["empid"].ToString());
            }
            //

            dvData.RowFilter = "empid in ("+list+")"; //i try to use data stored in list ?
            gridview1.DataSource = dvData;
            gridview1.DataBind();

1 Ответов

Рейтинг:
10

Karthik_Mahalingam

пробовать

for (int i = 0; i < dt.Rows.Count; i++)
            {
                DataRow myrow = dt.Rows[i];
                list.Add( string.Format("'{0}'" , myrow["empid"].ToString()));
            }
            //
            string filter = string.Join(",", list);
            
            dvData.RowFilter = "empid in (" + filter + ")";


sameer549

Привет, Картик, я думаю, фильтр должен быть таким,

строка фильтра = строка.Join ( " ,", list.Выберите (r=> "'" + r +"'"));

Karthik_Mahalingam

об этом здесь позаботились
список.Добавить (string.Формат ("'{0}'", myrow ["empid"].Метод toString()));

sameer549

О, я не заметил, хорошо.

Karthik_Mahalingam

:)

sameralkhalili

Спасибо тебе :)

Karthik_Mahalingam

добро пожаловать