मैं माइक्रोसॉफ्ट एंटीटी फ्रेमवर्क और कोडफर्स्ट सी # में डेटाबेस बना रहा हूं। मैं डेटाबेस को एक डब्ल्यूपीएफ-एप्लिकेशन में उपयोग करना चाहता हूं, इसलिए इकाई-वर्गों को "INotifyPropertyChanged" लागू करना चाहिए।PostSharp एंटीटी क्लास में k__Backing फ़ील्ड डालने, डाटाबेस पीढ़ी को असफल होने के कारण
यह पोस्टशर्प पहलू का उपयोग करके बहुत सुंदरता से किया जा सकता है, जो संपत्ति परिवर्तन में हर बार संपत्ति चेंज ईवेंट को ट्रिगर करता है। ,
\tSystem.Data.Entity.Edm.EdmNavigationProperty: Name: The specified name is not allowed: '<Name>k__BackingField'.
जाहिर PostSharp एक संपत्ति "k__BackingField" जो विफल डेटाबेस निर्माण का कारण बनता है कहा जाता है बनाता है: यदि मैं इस तरह के एक पहलू बना सकते हैं और मेरी इकाई वर्गों पर इसका इस्तेमाल, मैं निम्नलिखित अपवाद जब डाटाबेस बनाने का प्रयास कर पाने क्योंकि यह EntityFramework के दृष्टिकोण से एक अमान्य नाम है। क्या प्रत्येक त्रुटि-वर्ग में "INotifyPropertyChanged" मैन्युअल रूप से कार्यान्वित किए बिना इस त्रुटि को रोकने का कोई तरीका है?
पीएस: अंग्रेजी मेरी मूल भाषा नहीं है, अगर आप मुझे मेरे पोस्टिंग में संभावित गलतियों के बारे में सूचित करते हैं तो मैं बहुत आभारी हूं।
अग्रिम धन्यवाद
k__Backingfield बीज पोस्टशर्प उत्पन्न नहीं किया गया है, लेकिन सी # कंपाइलर द्वारा जब आप एक ऑटो लागू संपत्ति का उपयोग करते हैं। – albertjan
यह सच हो सकता है, लेकिन अगर मैं PostSharp को अक्षम करता हूं तो त्रुटि अब नहीं होती है। किसी भी तरह त्रुटि और PostSharp के बीच संबंध होना चाहिए। – BoltzmannBrain
क्या आपने बैकिंगफील्ड के साथ एक autoimplementedproperty से स्विच करने का प्रयास किया है? – albertjan