LINQ Operation GridView - PullRequest
       4

LINQ Operation GridView

2 голосов
/ 13 июля 2010

У меня есть GridView, который заполняет

ID  Name    City
1   Bobby   AAA
2   Laura   BBB
3   Ilisha  CCC

Я хочу получить перечисляемую коллекцию примерно так:

var  Query= from p in GridView1.Rows 
   select new { User_ID=p.ID,User_Name=p.Name,User_City=p.City }.ToList();

Как получить?

Заранее спасибо.

Ответы [ 3 ]

2 голосов
/ 13 июля 2010

Чтобы получить перечислимую коллекцию, все, что вам нужно сделать, это привести GridViewRowCollection к IEnumerable.

 IEnumerable<GridViewRow> rows = GridView1.Rows.Cast<GridViewRow>()
1 голос
/ 13 июля 2010

Если вы пытаетесь использовать реальный объект, который представляет строка сетки, вам необходимо получить доступ к свойству DataItem строки.

var query = from p in GridView1.Rows.Select(r => r.DataItem as YourDataType)
            select new 
            { 
                User_ID=p.ID,
                User_Name=p.Name,
                User_City=p.City 
            }.ToList()

(YourDatatype здесь представляет любой тип объекта, к которому вы хотите привязать сетку).

0 голосов
/ 13 июля 2010

Вы на правильном пути с запросом.

Единственное предложение состоит в том, чтобы попытаться использовать исходный источник, который привязывается к gridview, а не полагаться на gridview.DataSource

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