Вопросы касательно того, как сделать это руководство - PullRequest
2 голосов
/ 04 сентября 2010

я смотрел Как мне: создать форму ввода данных WPF с использованием Entity Framework?

очень запутался около 15:30. когда ведущий сказал что-то вроде

когда вы создаете запрос LINQ, мы не получим богатую коллекцию ...

Что она имеет в виду мои "богатые".

стартовый код выглядит ... что не так с этим. даже если я изменил db.Customers.Execute(...) с помощью запроса LINQ, код все еще работает. почему нужна новая наблюдаемая коллекция и почему ListCollectionView вместо представления BindingListCollection. какая разница между 2

// customerSource is a CollectionViewSource stored in Window.Resources
// db is of type OMSEntities (which is the Entity Collection Name, what does this mean?)
customerSource.Source = db.Customers.Execute(...);
this.view = (BindingListCollectionView) customerSource.View;

код после выглядит следующим образом (~ 21: 38)

results = from cust in db.Customers ...
customerData = new CustomerCollection(results, db);
customerSource.Source = customerData
view = (ListCollectionView) customerSource.View;

1 Ответ

3 голосов
/ 04 сентября 2010

Она означает, что вы получите IEnumerable, который не поддерживает двустороннюю привязку или дополнительные средства, такие как уведомления о событиях добавления / удаления, которые доступны в других типах коллекций.Итак, код берет IEnumerable и помещает результаты в «более богатый» тип коллекции, обладающий такими функциями.

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