खैर उन डेटा एनोटेशन को चाल चलनी चाहिए, शायद पोस्टग्रेएसक्यूएल प्रदाता से संबंधित कुछ है।
EF कोर दस्तावेज़ीकरण से:
<ब्लॉकक्वॉट>
उपयोग किए जा रहे डेटाबेस प्रदाता के आधार पर, मान EF या डेटाबेस में क्लाइंट पक्ष द्वारा उत्पन्न किए जा सकते हैं। यदि मान डेटाबेस द्वारा उत्पन्न होता है, तो जब आप संदर्भ में इकाई जोड़ते हैं तो EF एक अस्थायी मान निर्दिष्ट कर सकता है। इस अस्थायी मान को SaveChanges
. के दौरान डेटाबेस जेनरेट किए गए मान से बदल दिया जाएगा ।
आप इस Fluent Api कॉन्फ़िगरेशन के साथ भी कोशिश कर सकते हैं:
modelBuilder.Entity<Foo>()
.Property(f => f.Id)
.ValueGeneratedOnAdd();
लेकिन जैसा कि मैंने पहले कहा, मुझे लगता है कि यह डीबी प्रदाता से संबंधित कुछ है। अपने DB में एक नई पंक्ति जोड़ने का प्रयास करें और बाद में जांचें कि क्या Id
. के लिए कोई मान जेनरेट किया गया था कॉलम।