मेरे पास मेरे आवेदन में कई enums हैं जिनका उपयोग कुछ वर्गों में संपत्ति प्रकार के रूप में किया जाता है।डेटाबेस में एनम मानों को स्टोर करने का सबसे अच्छा तरीका - स्ट्रिंग या इंट
स्ट्रिंग या इंट के रूप में डेटाबेस में इन मानों को संग्रहीत करने का सबसे अच्छा तरीका क्या है?
एफवाईआई, मैं धाराप्रवाह निबर्ननेट का उपयोग करके इन गुण प्रकारों का मानचित्रण भी करूँगा।
नमूना कोड:
public enum ReportOutputFormat
{
DOCX,
PDF,
HTML
}
public enum ReportOutputMethod
{
Save,
Email,
SaveAndEmail
}
public class ReportRequest
{
public Int32 TemplateId
{
get { return templateId; }
set { templateId = value; }
}
public ReportOutputFormat OutputFormat
{
get { return outputFormat; }
set { outputFormat = value; }
}
public ReportOutputMethod OutputMethod
{
get { return outputMethod; }
set { outputMethod = value; }
}
}
मुझे विश्वास नहीं है कि आप आधे अनुशंसा करने वाले दृष्टिकोण पर भी विचार करेंगे जो आसानी से डेटा भ्रष्टाचार का परिणाम हो सकता है! कॉम्पैक्टनेस के लिए बस एक कल्पना की चिंता से बाहर? यदि कॉम्पैक्टनेस चिंता मजबूत है, तो enum में एक int फ़ील्ड जोड़ें! कभी भी ordinal पर भरोसा नहीं करते हैं। प्रभावी जावा पढ़ें। –
मैं वास्तव में नहीं देखता कि मैं ईमानदार होने के लिए कुछ भी कहां सिफारिश कर रहा हूं। मैं केवल फायदे और नुकसान बता रहा हूं। यद्यपि आपके पास एक बिंदु है, आप औपचारिक मूल्य पर भरोसा नहीं करना चाहते हैं, हो सकता है कि आप अपनी टिप्पणी में 'आग' को एक पायदान के नीचे बदलना चाहें;) – pyrocumulus
@ केविनबोरिलियन "एनम में एक int फ़ील्ड" क्या मतलब है? – John