Получение URL-адреса запроса клиента и его анализ в Odata

Я искал поставщика отражения Odata и понимаю, что запросы, запрашиваемые клиентом, будут отфильтрованы в списке (объект CLR), который мы представляем как элемент IQuereable. Есть ли способ, которым мы можем захватить URL-адрес запроса запроса на стороне сервера и проанализировать URL-адрес, чтобы мы могли заполнить список, который мы раскрываем, соответствующей информацией по запросу, а не заполнять весь дамп данных?


person vinay singri    schedule 16.03.2012    source источник


Ответы (1)


Разработанный способ сделать это — фактически реализовать IQueryable. Это может быть немного сложно, но дает вам всю необходимую информацию без необходимости анализировать URL-адрес (что еще сложнее, чтобы сделать это правильно).

Взгляните на эту серию блогов, в которых описываются деревья выражений, с которыми вы можете столкнуться: http://blogs.msdn.com/b/vitek/archive/2010/02/25/data-services-expressions-part-1-intro.aspx< /а>

И затем, вероятно, это, которое показывает, что вы можете обрабатывать только части дерева выражений и оценивать остальную часть в памяти, как вы это делаете сегодня: http://blogs.msdn.com/b/vitek/archive/2012/01/07/projections-in-custom-providers-simple-solution.aspx

Я знаю несколько реализаций сервера OData, которые используют этот подход частичной реализации IQueryable (в основном фильтрация и сортировка выполняются в бэкэнде, а остальное выполняется в памяти).

person Vitek Karas MSFT    schedule 16.03.2012