2011-10-10 17 views
10

मैं एक अच्छी तरह से परिभाषित डेटाबेस के साथ ईएफएफ के कोडफर्स्ट का उपयोग कर रहा हूं। मेरे डेटाबेस में 'Centros' (पुर्तगाली शब्द) नाम की एक तालिका है और मैं यह पता लगाने में कामयाब हूं कि ईएफ इस मामले में 'Centroes' चुड़ैल गलत होने के लिए मेरी संस्थाओं को बहुवचन करने की कोशिश करता है।इकाई फ्रेमवर्क कोड फर्स्ट टेबल बहुवचन

यदि मैं बहुवचन modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); हटाता हूं तो मैं इसे काम करने के लिए प्रबंधित करता हूं लेकिन मुझे अपनी तालिका का नाम 'सेंट्रो' (मेरी इकाई नाम से मेल खाने के लिए) का नाम बदलना है।

पुर्तगाली 'सेंट्रो' में एकवचन है, 'सेंट्रोस' बहुवचन है।

मैं अपने टेबल नामों का नाम बदलना नहीं चाहता हूं तो बहुवचन सम्मेलन को हटाने के बाद मैं अपनी इकाई के लिए मिलान तालिका नाम कैसे निर्दिष्ट कर सकता हूं?

उत्तर

22

मैं अपने सभी वर्गों को एनोटेट करता हूं, इस पर ध्यान दिए बिना कि फ्रेमवर्क कुछ स्मार्ट प्रतिबिंब दिनचर्या के माध्यम से मेरे लिए कर सकता है या नहीं। जैसे

[Table("Order")] 
public class Order 
{ 

} 

हम प्रकार स्पर्श कर सकते हैं, यह क्लीनर है और यह कम कुछ अप्रत्याशित घटना में अधिक गिरावट की संभावना है।

+1

यह बेहतर जवाब है http://stackoverflow.com/questions/4796543/how-do-i-singularize-my-tables-in-ef-code- फर्स्ट – om471987

-1

मॉडलबिल्डर अब सिस्टम है। डेटा। एंटीटी.डीबीमोडेलबिल्डर।

2

या आप Fluent एपीआई में इस तरह एक समय में एक कर सकते हैं:

modelBuilder.Entity() ToTable ("ContactInfo");।

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