मैंने कोर डेटा मॉडल स्थापित किया है जहां मेरे पास दो ऑब्जेक्ट हैं, व्यक्ति और पता कहें। एक व्यक्ति का पता होता है, और एक पता कई लोगों से संबंधित हो सकता है। मैंने इसे मूल डेटा में मॉडल किया है (इसलिए एकल तीर व्यक्ति को इंगित करता है, जबकि एकल तीर पता पर जाता है)कोर डेटा कंक्रीट कक्षा के बजाय NSManagedObject देता है, लेकिन केवल उपयोग करते समय। एक्सेसर
मैंने तब उन वस्तुओं के लिए दो कक्षाएं बनाई हैं, और उन वर्गों में कुछ कस्टम तरीकों को लागू किया है। कोर डेटा मॉडल में मैंने कक्षाओं के नामों में प्रवेश किया है।
यदि मैं सीधे कोर डेटा से पता प्राप्त करता हूं, तो यह मुझे वास्तविक ठोस वर्ग देता है और मैं इसके पर अपने कस्टम तरीकों को कॉल कर सकता हूं।
यदि दूसरी ओर मैं एक व्यक्ति लाता हूं और व्यक्ति के माध्यम से पते तक पहुंचने का प्रयास करता हूं (उदाहरण: person.address) मैं एक एनएसएमएनेज ऑब्जेक्ट वापस प्राप्त करता हूं जो एक पता है (उदाहरण: मैं सभी मूल डेटा विशेषताओं को प्राप्त कर सकता हूं I इस पर सेट है) लेकिन यह मेरे कस्टम तरीकों का जवाब नहीं देता है, क्योंकि यह पते के बजाय एनएसएमएनेज ऑब्जेक्ट प्रकार है। क्या यह कोर डेटा की सीमा है या क्या मैं कुछ गलत कर रहा हूं? यदि यह एक सीमा है तो क्या कोई काम आसपास है?
यह कोर डेटा सीमा नहीं है; आप निश्चित रूप से कुछ गलत कर रहे हैं। इसका मतलब क्या है "यह मेरे कस्टम तरीकों का जवाब नहीं देता है, क्योंकि यह पते के बजाय एनएसएमएनेज ऑब्जेक्ट प्रकार है"? क्या आपको एक चयनकर्ता अपवाद नहीं मिला है? क्या संकलक शिकायत करता है? हमें कुछ कोड और आउटपुट दिखाएं या समस्या का निदान करना मुश्किल होगा। –
तो यह एक रनटाइम त्रुटि है (एक कंपाइलर नहीं), एनएसएएनएजेडऑब्जेक्ट के बारे में मेरी कस्टम विधि के नाम का जवाब नहीं दे रहा है। जब आप कोर डेटा मॉडेलर में अपनी कक्षा का नाम निर्दिष्ट नहीं करते हैं तो आपको वही त्रुटि मिलती है। – rustyshelf