Хранилище таблиц AZURE, ODATA и более дружественные URI-запросы - PullRequest
0 голосов
/ 09 декабря 2010

Я хочу иметь службу ODATA, которая делает хранилище таблиц Azure запрашиваемым, но я не хочу заставлять клиента создавать запросы, которые ссылаются на PartitionKeys и RowKeys.Что потребуется для создания службы ODATA, которая может преобразовывать запрос URI, например

http://MyService.svc/Blogs(‘CustomerId’)?startdate eq’12/01/2010’&enddate eq’12/15/2010’ 

, в запрос хранения таблицы, например:

var rowKeyStart = startdate;    
var rowKeyEnd = enddate;    
var query = ctx.SomeBlogsTable.Where(p => p.PartitionKey == ‘CustomerId’ && 
             p.RowKey.CompareTo(rowKeyStart) <= 0 && 
             p.RowKey.CompareTo(rowKeyEnd) >= 0).Take(1000);

Если это можно сделать, он имеетПреимущество освобождения клиента от необходимости знать о Partitionkeys или Rowkeys при создании запроса.Но можно ли это сделать?Должно ли это быть сделано с пользовательским поставщиком услуг передачи данных?И какое кодирование должен выполнять такой поставщик для выполнения такого URI для запроса запроса?

1 Ответ

1 голос
/ 05 мая 2011

Хранение таблицы Azure можно запросить, если у вас есть ключ учетной записи и имя. Лучше всего создать свой собственный сервис OData и преобразовать их в запрос. Вы можете использовать WCF Data Service Toolkit, чтобы помочь вам сделать это. Вы можете проверить проект здесь . Это представит ваш сервис как OData и поможет вам написать обновления и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...