2012-04-13 2 views
1

sudzc wsdl에서 여러 행을 반환하려고합니다. 결과를 사전에로드했습니다. 아래의 코드는 나에게 첫 번째 결과를 준다. 첫 번째 결과 대신 모든 결과를 어떻게 검색합니까? 나는 [ID.text intValue] == CSHR_NUM 인 CSHR_POS_NAME을 찾고 있습니다. sudzc에서 여러 행 잡기

dict = [resp objectForKey:@"TC"]; 
if((dict == nil) || ![dict isKindOfClass:[NSDictionary class]]) { 
    NSLog(@"WARNING: %@", [dict description]); 
    return; 
} 
    desc = [[dict objectForKey:@"CSHR_POS_NAME"]copy]; 
    CashierNum = [[dict objectForKey:@"CSHR_NUM"]copy]; 

    NSLog(@"Name: %@ and Cashier Number: %@",desc, CashierNum); 

나는 VB에서 달성 할 수 있었다 :

If dsCashiers.Table("TC").Rows.Count > 0 Then 
... 
+0

그것은 sudzc의 문제입니다. 이전 노드를 역 직렬화하여 루프를 반복합니다. – iDev

+0

해결책보기 : http://stackoverflow.com/questions/10235496/sudzc-deserializeasdictionary-over-written-dictionary – iDev

답변

0
[d setObject:v forKey:[child name]]; 
NSString* key = [child name]; 
id check = [d objectForKey:key]; 
if(check != nil) { 

NSInteger next = 1; 
key = [NSString stringWithFormat:@"%@%d", [child name], next]; 
check = [d objectForKey:key]; 
while(check != nil) { 

    next++; 
    key = [NSString stringWithFormat:@"%@%d", [child name], next]; 
    check = [d objectForKey:key]; 
} 
[d setObject:v forKey:key]; 
} 
[d setObject:v forKey:[child name]];