2010-01-29 4 views
0

Каков правильный способ связывания запросов LINQ to SQL в элементах управления Windows Forms?LINQ to SQL и привязка форм Windows

Должен ли я следовать стандартным способом с BindingSource и обрабатывать события для отслеживания изменений, а различные значения изменяются с элементов управления. Такой тип привязки также будет связан с иерархическим связыванием объектов, EntityRef <>, EntitySet <>.

Теперь для дизайнера, правильно ли создать объект DataSource на модели домена dbml и использовать его на элементах управления или я должен просто использовать код? Я думаю, что способ дизайнера просто ускоряет работу, и это хорошо, но, как мы все знаем, скорость иногда бывает плохой.

ответ

0

Связывание с использованием BindingSource хорошо работает в моем опыте.

Единственная проблема с дизайном, которая у вас есть, это то, что LINQ   -   SQL datacontext построен для «краткосрочного» использования. Я это сделал: использовал LINQ   до   SQL datacontext часами в приложении Windows Forms для нескольких форм. Он работает, но вы знаете (и даже сочувствуете), что это не намеренное использование (например, не используйте Using или Dispose() заявления на datacontext).

Это означает, что вы должны использовать объект для одной единицы работы. Например, получите информацию или отправьте (несколько) обновлений в базу данных.

Это был момент, когда я очень подробно рассмотрел эту статью на MSDN, Data Retrieval and CUD Operations in N-Tier Applications (LINQ to SQL).