如何将数据从一个实体传递到另一个实体类?
Posted
技术标签:
【中文标题】如何将数据从一个实体传递到另一个实体类?【英文标题】:how to pass data from one entity to other entity class? 【发布时间】:2013-04-01 06:59:34 【问题描述】:我正在获取我的 chapterDC 类中的所有章节并获取区域,我在我的 chapterDC 类中有一个 selectedRegion 的属性,并希望通过 chapterDC 将我的区域数据传递到 regionDC,但我的日志消息始终为 0 且为空,我不知道自己做错了什么
-(NSMutableArray *)getAllChapters
NSMutableArray *returnArray = [[NSMutableArray alloc] init];
NSString *url = [NSString stringWithFormat:@"%@get_all_chapters",kWSURL];
NSDictionary * returnDict = (NSDictionary *) [self callWebService:url];
if([[returnDict objectForKey:@"status"] isEqualToString:@"success"])
NSDictionary * responseDict = (NSDictionary *) [returnDict objectForKey:@"response"];
NSArray *resultArray = [responseDict objectForKey:@"result"];
for(NSDictionary *chapterDict in resultArray)
ChapterDC * chapter = [[ChapterDC alloc] init];
chapter.ChapterDC_ChapterID=[[chapterDict objectForKey:@"ChapterID"]intValue];
chapter.ChapterDC_ChapterName = [NSString stringWithFormat:@"%@", [chapterDict objectForKey:@"ChapterName"]];
chapter.selectedRegion.RegionDC_RegionID=[ [chapterDict objectForKey:@"RegionID"]intValue];
NSLog(@"%d",chapter.selectedRegion.RegionDC_RegionID);
chapter.ChapterDC_AddressLine1 = [NSString stringWithFormat:@"%@", [chapterDict objectForKey:@"AddressLine1"]];
chapter.ChapterDC_AddressLine2 = [NSString stringWithFormat:@"%@", [chapterDict objectForKey:@"AddressLine2"]];
chapter.ChapterDC_AddressLine3 = [NSString stringWithFormat:@"%@", [chapterDict objectForKey:@"AddressLine3"]];
chapter.ChapterDC_Email = [NSString stringWithFormat:@"%@", [chapterDict objectForKey:@"Email"]];
chapter.ChapterDC_URL = [NSString stringWithFormat:@"%@", [chapterDict objectForKey:@"URL"]];
chapter.ChapterDC_FacebookURL =[ NSString stringWithFormat:@"%@", [chapterDict objectForKey:@"FacebookURL"]];
chapter.ChapterDC_LinkedInURL = [NSString stringWithFormat:@"%@", [chapterDict objectForKey:@"LinkedInURL"]];
chapter.ChapterDC_PhoneNumber =[ NSString stringWithFormat:@"%@", [chapterDict objectForKey:@"PhoneNumber"]];
chapter.ChapterDC_Postcode = [NSString stringWithFormat:@"%@", [chapterDict objectForKey:@"Postcode"]];
chapter.ChapterDC_TwitterURL = [NSString stringWithFormat:@"%@", [chapterDict objectForKey:@"TwitterURL"]];
NSDictionary * regionDict = (NSDictionary *) [returnDict objectForKey:@"region"];
chapter.selectedRegion = [[RegionDC alloc] init];
chapter.selectedRegion.RegionDC_RegionID = [[regionDict objectForKey:@"RegionID"]intValue];
NSLog(@"%d",chapter.selectedRegion.RegionDC_RegionID);
chapter.selectedRegion.RegionDC_RegionName = [NSString stringWithFormat:@"%@", [regionDict objectForKey:@"RegionName"]];
NSLog(@"%@",chapter.selectedRegion.RegionDC_RegionName);
chapter.selectedRegion.RegionDC_ContactName = [NSString stringWithFormat:@"%@", [regionDict objectForKey:@"ContactName"]];
chapter.selectedRegion.RegionDC_Mobile = [NSString stringWithFormat:@"%@", [regionDict objectForKey:@"Mobile"]];
chapter.selectedRegion.RegionDC_Landline = [NSString stringWithFormat:@"%@", [regionDict objectForKey:@"Landline"]];
chapter.selectedRegion.RegionDC_TrainingURL = [NSString stringWithFormat:@"%@", [regionDict objectForKey:@"TrainingURL"]];
[returnArray addObject:chapter];
return returnArray;
【问题讨论】:
也许您应该将 int 封装在一个 NSNumber 中? 【参考方案1】:替换NSDictionary * regionDict = (NSDictionary *) [returnDict objectForKey:@"region"];
与
NSDictionary * regionDict = (NSDictionary *) [chapterDict objectForKey:@"region"];
【讨论】:
以上是关于如何将数据从一个实体传递到另一个实体类?的主要内容,如果未能解决你的问题,请参考以下文章
mvc 从视图传递到Controller 多个不同的实体类接收如何做呢?
Symfony2/Doctrine:如何从实体类中持久化一个实体?