में Enum के साथ संगत डाटाबेस पहली डिजाइन का उपयोग करना और tinyint होने (या SMALLINT) स्तंभ नहीं:TINYINT (बाइट), SMALLINT (int16) EF5
[MyEnumColumn] [tinyint] NOT NULL
मैं
साथ ईडीएम में Enum प्रकार के लिए इस स्तंभ मैप कियाExternal Type: NSpace.MyEnumType
Name:MyEnumType
UnderlyingType:Byte
कहाँ NSpace.MyEnumType इस तरह परिभाषित किया गया है:
public enum MyEnumType
{ One, Two, Three, All }
केवल
जब इकाई लोड करने का प्रयास यह त्रुटि मिलना संदर्भ से:
Schema specified is not valid. Errors:
No corresponding object layer type could be found for the conceptual type 'EntityDataModel.MyEnumType'.
The following information may be useful in resolving the previous error:
The underlying type of CLR enumeration type does not match the underlying type of EDM enumeration type.
एक ही लागू होता है अगर मैं [SMALLINT] और [int16] का उपयोग करें, लेकिन एक बार मैं [इंट] और करने के लिए enum प्रकार के डेटाबेस को बदलने [Int32] त्रुटि चला गया है।
मुझे 1 बाइट (टिनिंट) के बजाय 4 बिट (इंट) डेटा फ़ील्ड में एनम वैल्यू स्टोर करने की आवश्यकता क्यों है, जब 99.9% समय में enums में 256 से अधिक आइटम नहीं हैं या क्या मुझे कुछ और याद आ रहा है?
यह भी त्रुटि है कि मैं आज था हल किया। तो +1 – magicandre1981
यह मेरा दिन बचाया :) +1 – Midas
अच्छा अगर कोई दिलचस्पी लेता है, तो हाँ, निश्चित रूप से आप मुझे बचाओ !! धन्यवाद भाई!! – CMS