2013-07-24 2 views
0

코어 데이터에 문자열로 변환하려는 데이터가 있으므로 웹 서버로 다시 보낼 수 있습니다. 이것은 지금까지 가지고있는 코드입니다 :코어 데이터를 JSON 문자열로 변환하는 가장 좋은 방법은 무엇입니까?

NSData 라인에 오류가 발생합니다. 내가 말할 수있는 것부터 timeArray에는 5 개의 객체가 있습니다. 나는 이것이 아주 단순한 실수라고 확신하고 있으며, 나는 이것에 대해 완전히 잘못된 길을 가고있다.

+0

모든 핵심 데이터 모델에 대해 사전 방식으로 작성했습니다. JSON으로 변환하거나 로깅해야 할 때 쉽게 사용할 수 있습니다. – JeffRegan

답변

3

... 당신의 경우

An object that may be converted to JSON must have the following properties:

The top level object is an NSArray or NSDictionary. All objects are instances of NSString, NSNumber, NSArray, NSDictionary, or NSNull. All dictionary keys are instances of NSString. Numbers are not NaN or infinity.

최상위 객체가 NSArray하지만 모든 개체 NSManagedObject의 인스턴스를 넣어 (또는이 프로젝트의 사용자 정의 하위 클래스가 프로젝트를 설정 한 경우).

아마 가장 쉬운 수정은 이것이다 :
unfinishedTime.resultType = NSDictionaryResultType; 

코어 데이터가 당신에게 사전의 배열보다는 JSON 시리얼 라이저에는 직렬화하는 방법을 알고있는 객체 관리 객체의 배열을 반환합니다 그 방법

.

+0

흥미 롭군요, 배열을 사전으로 바꾸려고했지만 어떻게 확신이 들지 않았습니다. 나는 내일 이것을 시도 할 것이다. – Keith

+1

그런데도 작동하는 것처럼 보였습니다. 'JSON 쓰기가 잘못되었습니다 (__NSDate)'라는 오류가 발생했습니다. 내 핵심 데이터에는 몇 가지 날짜 필드가 있으며 JSON은이를 처리 할 수 ​​없습니다. 배열을 변환하는 쉬운 방법이 있습니까? 아니면 배열을 반복하여 수동으로해야합니까? – Keith

관련 문제