如何检查数据库和Web服务之间的版本?

时间:2014-01-14 09:53:58

标签: ios database web-services uicollectionview

当我打电话给Webservice时,如何检查数据库中的数据?

当我在设备中调用数据库时,我正在使用它 Listname = [db getdata];但我需要使用Webservice检查数据库上的数据。我可以用这个

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

    NSURL *imageURL = [NSURL URLWithString:[[Listname objectAtIndex:indexPath.item]coverURL]];

    NSData *imageData = [NSData dataWithContentsOfURL:imageURL];
    UIImage *image = [UIImage imageWithData:imageData];

    [db initWithDB];

    dispatch_async(dispatch_get_main_queue(), ^{
        shelfcell.bookCover.image = [UIImage imageWithData:imageData];
    });
});

我可以显示来自Web服务的图像,我可以显示来自数据库的图像,但我不知道如何检查我知道的数据只检查使用didSelectItemAtIndexPath:(NSIndexPath *)indexPath当点击图像将检查数据但是如何从中获取数据cellForItemAtIndexPath:(NSIndexPath *)indexPath我需要两个数据来检查版本。//感谢任何想法


修改

我使用didSelectItemAtIndexPath:(NSIndexPath *)indexPath进行检查

            if([db isDownloaded:ListName ListVersion:[ListVersion floatValue]]){


                [self performSegueWithIdentifier:@"reader" sender:self];
            }
            else{

                [self startDownload];
            }

这是我的检查数据库

-(BOOL)isDownloaded:(NSString*)ListName ListVersion:(float)ListVersion {
.....
 NSString *tempBook = [NSString stringWithUTF8String:(char *)sqlite3_column_text(searchStatement, 3)];
                float tempBookVr = (float)sqlite3_column_double(searchStatement, 5);
                NSString *tempVersion = [[NSNumber numberWithFloat:(float)sqlite3_column_double(searchStatement, 5)] stringValue];
                if ([ListName isEqualToString:tempBook]) {
                    if (ListVersion == tempBookVr) {                       
                        sqlite3_finalize(searchStatement);
                        return YES;
                    }
                    else
                    {
.....
    }

这个是didSelectItemAtIndexPath:(NSIndexPath *)indexPath的工作,但我不知道cellForItemAtIndexPath:(NSIndexPath *)indexPath的检查//感谢任何想法。

0 个答案:

没有答案