2013-01-18 7 views
11

मेरे पास डाटाबेस फर्स्ट का उपयोग करके एंटीटी फ्रेमवर्क में मैप किए गए कुछ संग्रहीत प्रक्रियाएं हैं। यह दृढ़ता से टाइप की गई विधियां बनाता है जिन्हें आप संग्रहित प्रक्रियाओं को चलाने के लिए कॉल कर सकते हैं। मैंने एक महत्वपूर्ण समस्या में भाग लिया है, हालांकि, इसमें संग्रहीत प्रक्रियाओं में परिभाषित डिफ़ॉल्ट पैरामीटर के साथ बनाए गए इन तरीकों को कॉल करने का कोई तरीका नहीं दिखता है। इसका अर्थ है:इकाई फ्रेमवर्क - डिफ़ॉल्ट पैरामीटर के साथ संग्रहीत प्रक्रिया को कॉल करें

ए) मुझे विधि कॉल में मैन्युअल रूप से डिफ़ॉल्ट पैरामीटर जोड़ना होगा, जो कि भंगुर है, यदि डिफ़ॉल्ट पैरामीटर मान कभी बदलना था।

बी) हाथ से विधि अधिभार लिखें। यह मूल रूप से डेटाबेस से पहले मॉडल को उत्पन्न करने के लाभ को समाप्त करता है।

क्या किसी को पता है कि इस समस्या का बेहतर समाधान है या नहीं?

धन्यवाद।

+0

आप गुण विंडो के माध्यम से किसी इकाई प्रॉपर्टी के लिए हमेशा डिफ़ॉल्ट मान सेट कर सकते हैं। क्या आपकी मदद नहीं करता है। –

+0

यह अभी भी मुझे डिफ़ॉल्ट मान को मैन्युअल रूप से दर्ज करने में शामिल करेगा- यदि कभी भी प्रो के डिफ़ॉल्ट मान को बदल दिया गया है तो यह मॉडल के साथ स्वचालित रूप से सिंक्रनाइज़ करने का कोई तरीका नहीं होगा। – MgSam

+1

क्या आप procs लिख सकते हैं जो आपको सर्वर से डिफ़ॉल्ट मान प्रदान करते हैं? –

उत्तर

6

जनवरी 2013 तक, इकाई फ्रेमवर्क ऐसा करने का कोई समर्थित तरीका नहीं है।

मैंने एक सुविधा अनुरोध here खोला है।

+0

हो सकता है कि आप इसे पहले ही जानते हों लेकिन .. माइग्रेशन के कारण, उन्होंने आपका टिकट बंद कर दिया है और यदि आप इसे फिर से विचार करना चाहते हैं तो इसे जिथब समुदाय में फिर से खोलना चाहिए https://github.com/aspnet/EntityFramework6/ मुद्दे – Sycraw

3

यहां एक हैकी वर्कअराउंड है। मुझे नहीं पता कि वैकल्पिक पैरामीटर का समर्थन करने के लिए ईएफ में कोई सुविधा है या नहीं, लेकिन आप इसे अनुकरण करने का प्रयास कर सकते हैं - यदि आप संग्रहित प्रक्रियाओं को बदलने के इच्छुक हैं।

आप प्रक्रिया के शरीर में NULL को संग्रहीत प्रक्रिया की परिभाषा में डिफ़ॉल्ट मान को बदल सकते हैं, और फिर, वांछित डिफ़ॉल्ट मान के साथ NULL पैरामीटर बदलें। फिर ईएफ का उपयोग कर कोड से आप डिफ़ॉल्ट का उपयोग करने के लिए null पास कर सकते हैं। इस तरह कम से कम डिफ़ॉल्ट केवल एसपी में ही परिभाषित किया जाता है।

कमियां पाठ्यक्रम है कि अब NULL एक "आउट-ऑफ-बैंड" मूल्य हो जाता है, जिसका अर्थ है कि आप वास्तव में करने के लिए सपा इसे पारित नहीं कर सकते हैं कि आप क्या जरूरत है की शामिल हैं (अपने एस.पी. बदलने के लिए होने और भविष्य की सभी लोगों को यह सुनिश्चित करने के अलावा इस अजीब सम्मेलन का उपयोग करें)

+0

हां, मैंने वास्तव में ऐसा करने का प्रस्ताव दिया लेकिन यह हमारे लिए अन्य जटिलताओं का कारण बनता है, इसलिए दुर्भाग्यवश यह विकल्प नहीं है। – MgSam

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

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