Здравствуйте, Аноним, Вы писали:
А>Например есть коллекция некоторых объектов. Я хочу иметь другую коллекцию, которая получается из первой путем наложения фильтра (например, где myCallType = "IncomingCall"). Получить отфильтрованную коллекцию не сложно при помощи LINQ-запроса. Но можно ли получить коллекцию, которая будет "поддерживаться" системой? Я имею ввиду, что если впоследствии кто-то добавить объект, подходящий под условия фильтра, то он автоматически должен быть добавлен в эту коллекцию. Если кто-то изменить у объекта тип "IncomingCall" на "OutgoingCall", то объект должен быть удален из коллекции. А если же наоборот — добавлен. Поддерживает ли эту фишку EntityFramework и как это сделать?
Подобным образом себя ведет EntityCollection, — тип который используется для представления свойств-коллекций персистентных объектов.
ObjectQuery, о котором вы ведете речь, такими свойствами не обладает, и это естественно. ObjectQuery просто вернет набор объектов попадающих под условия запроса на момент выполнения запроса.