Данные Azure Mobile Services в UITableView IOS

У меня есть блок для запуска запроса набора данных из базы данных Azure: [query readWithCompletion: ^ (NSArray * items, NSInteger totalCount, ошибка NSError *) {

Как я могу получить * предметы и поместить их в таблицу? Поскольку я не вижу эту переменную из блока. Я попытался назначить внешний массив __ в блоке, но не использовать.

Кто-нибудь пытался это сделать?

благодаря

Джейсон

2 ответа

Самый простой способ увидеть, как это должно работать, - загрузить приложение Quickstart с портала Windows Azure после создания Mobile Service. Быстрый запуск - это приложение Todo, которое вытаскивает добавленные вами предметы, которые вы добавили, и отображает их в ListView. Когда вы вызываете метод чтения Mobile Service, вы указываете обратный вызов, как показано здесь:

[query readWithCompletion:^(NSArray *results, NSInteger totalCount, NSError *error)
{
 [self logErrorIfNotNil:error];

 items = [results mutableCopy];

 // Let the caller know that we finished
 completion();
}];

В этом методе QSCompletionBlock, называемый завершением, вызывается из метода readWithCompletion, когда он получил ответ от вашего мобильного сервиса. В Quickstart это завершение выглядит следующим образом:

[self.todoService refreshDataOnSuccess:^
{
 if (self.useRefreshControl == YES) {
 [self.refreshControl endRefreshing];
 }
 [self.tableView reloadData];
}];

Затем это вызывает табличное представление для перезагрузки данных. Существуют и другие методы, которые являются частью класса TableViewController, которые необходимы для привязки данных к представлению таблицы, поэтому я настоятельно рекомендую пройти код Quickstart.


я думаю, вам нужно что-то вроде этого

[RSSParser parseRSSFeedForRequest:request success:^(NSArray *feedItems) {

 self.linkArray=feedItems;//
 dispatch_async(dispatch_get_main_queue(), ^{
 //3
 [self.tableView reloadData];
 });

} 
failure:^(NSError *error) { }];

licensed under cc by-sa 3.0 with attribution.