Re[2]: А можно ли в EntityFramewrok работать с фильтрами?
От: Аноним  
Дата: 27.10.08 12:19
Оценка:
Здравствуйте, stump, Вы писали:

S>Здравствуйте, Аноним, Вы писали:


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


S>Подобным образом себя ведет EntityCollection, — тип который используется для представления свойств-коллекций персистентных объектов.

S>ObjectQuery, о котором вы ведете речь, такими свойствами не обладает, и это естественно. ObjectQuery просто вернет набор объектов попадающих под условия запроса на момент выполнения запроса.
Да, то что возвращенных ObjectQuery или IQueryable<T> не будет себя вести подобным образом — понятно. Это просто некий "слепок" объектов. А как для EneitytCollection прописать этот самый фильтр? Например в DevExpress-е у коллекции XPCOlletion, есь свойство Filter, куда можно много чего пропихивать и будет идти фильтр. Там даже есть раздаление фильтров на 2 типа: Criteria — это фильтр на стороне сервера и Filter — это фильтр на стороне клиента. Как обстоит с этим дело у EntityFramework?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.