7

मैं इकाई की रूपरेखा 5 उपयोग कर रहा हूँ दृश्य स्टूडियो 2012इकाई की रूपरेखा अद्यतन मॉडल टीटी कक्षा में नए जोड़े तालिका के लिए सीएस वर्ग पैदा नहीं

साथ मैं एक मौजूदा मॉडल की क्या ज़रूरत है। अब मैं उस मौजूदा मॉडल में एक नई टेबल जोड़ना चाहता हूं। इसके लिए मैंने edxm फ़ाइल खोली है और राइट क्लिक का उपयोग करके मैंने मॉडल को सफलतापूर्वक अपडेट किया है।

अब मॉडल के लिए "EntityTypes" के तहत "मॉडल ब्राउज़र" में, मैं तालिका का नाम मौजूद देख सकता हूं। लेकिन समाधान एक्सप्लोरर में यह उस तालिका के लिए स्वत: जेनरेट की गई .cs फ़ाइल नहीं दिखा रहा है जिसे मैंने .tt फ़ाइल के अंतर्गत जोड़ा है।

मैंने "कस्टम टूल चलाने" की कोशिश की लेकिन इसने कक्षा उत्पन्न नहीं की है। विजुअल स्टूडियो को फिर से शुरू कर दिया है लेकिन परिणाम वही है।

किसी को भी मेरी मदद कर सकते हैं?

धन्यवाद

+0

कोई भी विशेषज्ञ उपलब्ध है ..? – Dev

उत्तर

14

समस्याएं

  1. मामले में आप डाटाबेस लेकिन जोड़ने 'इकाई डेटा मॉडल' आप edmx में Employee को इकाई tblEmployee बदल गया है फ़ाइल तो सहेजें और निर्माण के बाद तालिका नाम tblEmployee है। लेकिन बदले गए नाम के लिए क्लासेस मॉडल 1.tt फ़ाइल में स्वचालित रूप से जेनरेट नहीं होते हैं।
  2. जब "डेटाबेस से अद्यतन मॉडल" नई तालिका जोड़ने के लिए एक ही समस्या होती है।
  3. इसके अलावा MVC में उपलब्ध नहीं जब मॉडल कक्षा के साथ दृश्य बनाने/EntityFramework

यह समस्या का उपयोग कर कार्यों के साथ नियंत्रक बनाएं VS2012.This समस्या के प्रारंभिक संस्करण के लिए VS2012 के उन्नत संस्करण में हल किया जाता है है।

समाधान

हम VS2012 & एफई 5.0

पालन के प्रारंभिक संस्करण के साथ इस के लिए समाधान है कदम

  1. सही MODEL1 पर क्लिक करें।टीटी और 'कस्टम टूल चलाएं' का चयन करें और अब बनाएं कक्षाएं उत्पन्न होती हैं।
  2. सही Model1.Context.tt पर क्लिक करें और 'भागो कस्टम टूल' बचाने के लिए और अब निर्माण को देखने के संदर्भ कक्षा में संपत्ति

    public DbSet<Employee> Employees { get; set; } 
    

सहेजें की तरह उत्पन्न होता है और बिल्ड समाधान

Model1Context context=new Model1Context(); 
List<Employee> empList= context.Employees.ToList(); 

यह मेरे लिए काम किया। लेकिन ध्यान रखें कि अभी भी ईएफ 6.0 वीएस2012 के इस विचलन के साथ एमवीसी में 'नियंत्रक बनाने और इकाईफ्रेमवर्क का उपयोग करने' को देखते हुए मचान बनाने में सक्षम नहीं है। आपको ईएफ 5.0 का उपयोग करना होगा या नए अपडेट के साथ वीएस2012 अपडेट करना होगा।

+1

धन्यवाद। मैंने अभी भी इसे हल कर लिया है इससे पहले कि मैं इस जवाब को स्वीकार कर रहा हूं क्योंकि यह दूसरों के लिए सहायक हो सकता है। – Dev

+1

यह बहुत उपयोगी था, धन्यवाद। आम तौर पर ऑटो कोड जनरेशन मेरे लिए ठीक काम करता है लेकिन इस बार मैंने एपएसपीईटी वेबसाइट प्रोजेक्ट में एएसपी.NET वेबसाइट प्रोजेक्ट में एडीएमएक्स जोड़ा है, जो डेटाबेस से अद्यतन मॉडल का उपयोग कर डेटाबेस से नई तालिका जोड़ने पर उत्पन्न नहीं हो सकता है। "। –

+1

यह सुपर सहायक था। मैं इस मुद्दे को दूर करने के लिए काफी समय से संघर्ष कर रहा हूं। यह मेरे लिए काम करता है। धन्यवाद! अच्छा काम करते रहें। –

4

इस मामले मैं क्या कर मैं सिर्फ रोमांचक मॉडल को हटा और फिर ऐड पर क्लिक करें और सिर्फ वहाँ के लिए अपने नए जोड़े तालिका जोड़ने है!

यदि यह edmx यह अब तय हो गई है एक फ़ोल्डर में स्थित फ़ाइल के साथ बग है - डाउनलोड और वी.एस. 2012 स्थापित अद्यतन 1. आप से प्राप्त कर सकते हैं:

http://www.microsoft.com/visualstudio/eng/downloads#d-visual-studio-2012-update

+0

अद्यतन दृश्य स्टूडियो। समस्या हल नहीं हुई .. – Dev

4

इसे अपने आप को हल।

समस्या फ़ाइलों फ़ाइल नाम .Context.tt और फ़ाइल नाम .tt में था।

दोनों फाइलों में निर्दिष्ट परिवर्तनीय const string inputFile के लिए चित्र फ़ाइल नाम मौजूदा चित्र फ़ाइल (.edmx फ़ाइल) से अलग थे। इसे मौजूदा आरेख फ़ाइल नाम के साथ अद्यतन किया गया और फिर डेटाबेस से अद्यतन मॉडल। अभी ठीक काम कर रहा है।

+0

क्या आप इसे समझा सकते हैं? –

+0

यह बहुत अच्छा जवाब है। अपने मॉडल को पूरी तरह से हटाएं और नया डेटा मॉडल जोड़ें। इसलिए फाइलें फिर से फाइलें और तय की जाएंगी। मॉडल आरेख में टेबल को न हटाएं। मॉडल फ़ाइल और किसी नेस्टेड फाइलों को हटाएं। –

+0

आपने मेरा दिन बचाया! –

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