2011-02-26 7 views
9

के साथ मेरे पास एक आईडी (uniqueidentifier), datetime, और एक मान के साथ एक साधारण तालिका है।डेटाबेस उत्पन्न GUID और डेटाटाइम का उपयोग EF4

मैं आईडी के लिए रिकॉर्ड प्रविष्टि समय और newid() के लिए डेटाबेस पर getdate() का उपयोग करना चाहता हूं। ऐसा करने के लिए मैं इकाई ढांचे को कैसे कॉन्फ़िगर कर सकता हूं? जब मैं डीबी पर आईडी असाइन करने का प्रयास करता हूं तो मुझे मिलता है:

Violation of PRIMARY KEY constraint 'PK_Random'. Cannot insert duplicate key in object 'dbo.Random'. The duplicate key value is (00000000-0000-0000-0000-000000000000). 

उत्तर

22

यदि आप पहले कोड का उपयोग कर रहे हैं। कृपया अपने गाइड में निम्नलिखित जोड़ें।

[DatabaseGenerated(DatabaseGeneratedOption.Identity)] 
public Guid guId { get; set; } 

यह एसक्यूएल सर्वर साइड गाइड पीढ़ी को सक्षम करेगा। आशा करता हूँ की ये काम करेगा।

+3

ध्यान दें कि इसके लिए नामस्थान 'System.ComponentModel.DataAnnotations.Schema' – Crazometer

7

@lunateck उत्तर के बाद से इसे जोड़ने के लिए बस मेरी मदद की। दूसरी तरफ (यदि आप डाटाबेस फर्स्ट का उपयोग कर रहे हैं) है:

  1. अपनी edmx फ़ाइल खोलें।
  2. राइट क्लिक करें -> मॉडल ब्राउज़र
  3. राइज कॉलम -> गुण ->StoreGeneratedPatternIdentity पर राइट क्लिक करें।
+0

बूया - का संदर्भ होना आवश्यक है। –

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