Для моего проекта я использую SqlCE 3.5, Linq2Sql и генерирую классы сущностей (файл dbml) с помощью SqlMetal.
Если я использую расширения классов сущностей в качестве классов бизнес-объектов, как мне поступить с дочерними объектами?
Могу ли я использовать существующий EntitySet (Of ChildClass), который уже находится в файле dbml? Или я должен создать новое свойство коллекции в моем частичном расширении класса, например:
public partial class ParentClass
{
public List<ChildClass> children { get; set; }
}
Я получил смутное предположение, что EntitySet (Of ChildClass) имеет какой-то тип прямого соединения с полной таблицей базы данных. И что мне, возможно, следует использовать это как чисто объект доступа к данным, а для бизнес-логики я должен оставить этот другой объект коллекции, который может содержать только подмножество таблицы.
Но я не уверен, правильно ли я понял концепцию? Мне действительно нравится знать, как это должно использоваться должным образом ..?
РЕДАКТИРОВАТЬ1:
Одна вещь, которая, возможно, является проблемой производительности для меня, - это когда я связываю мои коллекции объектов с сеткой данных. Некоторые свойства обновляются довольно часто из фида данных фондовой биржи, и мне интересно, если использование EntitySets в качестве коллекции бизнес-уровня делает это медленным. Хотя я не вызываю submitchanges в этих обновлениях . Тем не менее, я не могу прокрутить обзор данных из-за всех обновлений. Может ли это быть из-за использования EntitySets или просто из-за того, что само представление данных обновляется настолько часто, что прокрутка может показаться невозможной?