Привязка данных WPG Toolkit DataGrid к запросам LINQ to SQL - PullRequest
1 голос
/ 24 января 2010

При привязке WPG Toolkit DataGrid к базе данных SQL через LINQ to SQL, как правильно установить источник привязки:

это должна быть какая-то общая коллекция, заполненная и обновленная запросами LINQ to SQL, или существует возможность прямого подключения DataGrid к запросам LINQ to SQL?

1 Ответ

2 голосов
/ 24 января 2010

Как всегда, существует более одного способа кожи кошки. Однако я предпочитаю создавать запрос LINQ to SQL и использовать .ToList () для отправки списка в ObservableCollection, чтобы вы могли отслеживать изменения ваших данных и обновлять базу данных SQL Server, когда ваши данные грязные. Другими словами, это будет выглядеть примерно так:

// Create an instance of your LINQ to SQL DataContext
LINQDataContext dc = new LINQDataContext();
var productQuery = from p in dc.Products select p;

// Create an ObservableCollection to hold your data and bind the DataGrid to this collection
public ObservableCollection<Product> Products {get; set;}
Products = new ObservableCollection<Product>(productQuery.ToList());

Но, конечно, если вам нужно выполнить фильтры, группировку или сортировку, я бы вместо этого отправил запрос в ListCollectionView. Который будет выглядеть так:

public ListCollectionView Products {get; set;}
Products = new ListCollectionView(productQuery.ToList());

Надеюсь, это поможет!

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