2012-03-10 21 views
5

में कैस्केडिंग हटाएं तो मेरे पास दो टेबल, चालान और चालान इटम्स हैं। जब मैं चालान हटाता हूं, तो मैं सभी संबंधित चालान इटम्स को भी हटा देना चाहता हूं।एंटिटी फ्रेमवर्क

मैंने एक चालान हटाते समय एक कैस्केडिंग डिलीट करने के लिए SQL सर्वर में रिश्ते को अद्यतन किया। एंटीटी फ्रेमवर्क ने उस बदलाव को पहचाना नहीं है, लेकिन मैंने पढ़ा है कि मुझे कैस्केडिंग डिलीट करने के लिए मैन्युअल रूप से अपना ईडीएमएक्स अपडेट करना होगा।

मेरी edmx के डिजाइन को ध्यान में रखते

ठीक है, मैं दो तालिकाओं के बीच संबंध पर क्लिक किया, और जाँच गुण कोशिश करते हैं और मेरी व्यापक

enter image description here

हटाना तुम, देखते हैं देख सकते हैं स्थापित करने के लिए दो ऑनडेलेट गुण: एंड 1 ऑनडेलेट और एंड 2 ऑनडेले

मुझे किसके लिए कैस्केड पर सेट करने की आवश्यकता है?

उत्तर

5

यदि एंड 1 रिश्ते का प्रमुख है (यानी आपका चालान जिसमें चालान आइटम हैं) तो यह समझने के लिए समझ में आता है कि इसे हटा दिया गया है।

7

मैं भी शुरू में इस बारे में उलझन में था, और कारण यह है कि मैं क्या है कि क्या यह क्षेत्र नेविगेशन संपत्ति या क्षेत्र भूमिका का नाम कि क्या वस्तु समाप्त प्रतिनिधित्व किया वर्णित किया गया था, बनाने के बारे में सुनिश्चित नहीं था Devidigitals अप्रभावी के रूप में एक जवाब।

और इसका उत्तर यह है कि फ़ील्ड भूमिका नाम द्वारा अंत का वर्णन किया गया है।

हम जानते हैं कि हम जब प्रश्न में चालान नष्ट कर दिया जाता है सब InvoiceItems एक चालान के लिए को नष्ट करना चाहते हैं, तो हम शायद पता है कि हम चालान के लिए OnDelete स्थापित करना चाहिए, और विशिष्ट लगता है तो अगर अंत में संबंध में चालान का प्रतिनिधित्व करता है, अंत के लिए खोजें जहां भूमिका का नाम "चालान" है। उपर्युक्त उदाहरण में, यह एंड 1 है।

यह स्पष्ट हो सकता है यदि आप इसे जानते हैं, लेकिन यदि आप नहीं करते हैं।

+0

मुझे लगता है कि आपने अपनी पोस्ट को यह कहने के लिए संपादित किया है कि उपरोक्त एंड 2 भूमिका का नाम "चालान" था। क्या यह अंत 1 नहीं होना चाहिए? –

+0

@KyleW ओह, निश्चित रूप से आप सही हैं। मुझे सूचित करने के लिए धन्यवाद। – Alex

संबंधित मुद्दे