Эй, ребята, я надеюсь, что у всех все хорошо.
У меня (более-менее) широкий вопрос, касающийся представления модели различным клиентам.
Вот моя ситуация: у меня есть модель (расположенная поверх Oracle), которая создаетсяиспользуя EF 4.0 и стороннего провайдера Oracle.Модель находится в библиотеке, поэтому на нее могут легко ссылаться несколько проектов.
Моя цель - сделать модель доступной для максимально возможного числа клиентов:
- .код клиента .Net (Silverlight, WPF и ASP.Net, службы и т. Д.).
- Приложения MS Office (Excel)
Теперь я не хочу заниматься созданием пользовательских методов для модели (например, GetCustomersWhoAreVeryUpsetOrderedByUpsetRank ()).Я хотел бы иметь возможность представить модель таким образом, чтобы клиентский код мог решить (во время выполнения), как построить запросы.Должен ли я взять IQueriable, выполнить его в службе и вернуть набор данных результатов?Или я позволю клиенту выполнять всю работу с помощью модели?
Я действительно дал снимок oData, но похоже, что библиотека на стороне клиента, используемая для написания запросов Linq к модели, довольно ограничивающая.Кроме того, протокол не поддерживает обновления.
Поэтому мой вопрос заключается в том, каков наилучший подход / технология / реализация для представления Модели на основе вышеупомянутых критериев?
Большое спасибо заранее.