6

मैं वी.एस. 2013 और SQL Svr 2012 उपयोग कर रहा हूँ और एक gridview पॉप्युलेट करने के लिए कोशिश कर रहा है उपयोग एफई। चूंकि यह एक बहुत ही सरल परीक्षण है, मेरे पास एक कुंजी और कुछ डेटा फ़ील्ड वाली एक तालिका है। मॉडल बनाने की प्रक्रिया ठीक काम करने लगती है - यह डिज़ाइनर व्यू में अपेक्षित के रूप में दिखाती है, फाइलें app_code में बनाई गई हैं, एक बिन फ़ोल्डर 2 डीएलएस के साथ बनाया गया है, और कॉन्फ़िगरेशन फ़ाइल को कनेक्शन स्ट्रिंग और अन्य प्रविष्टियों के साथ अपडेट किया गया है।विजुअल स्टूडियो 2013 और इकाई की रूपरेखा

जब मैं "नाम कनेक्शन" मैं त्रुटि मिलती है का चयन करने के लिए प्रयास करें "असमर्थ निर्दिष्ट मेटाडाटा संसाधन लोड करने के लिए" और यह विधानसभाओं प्राप्त करने के लिए परियोजना के पुनर्निर्माण के बारे में बात करती है।

मैं घंटे इस तरह अन्य मामलों पढ़ने खर्च किया है और मुझे समझ में नहीं कर सकते हैं:

  1. क्यों ऐसा हो रहा है जब यह 2010

  2. मैं कैसे ठीक करूं वी.एस. के साथ एक समस्या कभी नहीं था कनेक्शन स्ट्रिंग जो संसाधन चाहता है उसे इंगित करने के लिए। पूरी तरह से योग्य असेंबली नामों के बारे में सभी तकनीकी सलाह के साथ मैं पूरी तरह से खो गया हूं - कुछ भी मैं काम करने की कोशिश नहीं करता हूं।

  3. मैं कैसे उचित स्थान पर होने के लिए मजबूर करने के लिए संसाधनों कुछ पैरामीटर सेट करते हैं? सभी सलाह मैं पढ़ा है वी.एस. के साथ बहुत अच्छी तरह से संबंधित प्रतीत नहीं होता है 2013

मैं अगर मैं सिर्फ वी.एस. 2013 की स्थापना रद्द करना चाहिए और प्रयोग वी.एस. 2012 वर्तमान में, मैं VS 2010 उपयोग कर रहा हूँ के साथ यह निर्णय लेना होगा एएसपी 4.0 और मैं एएसपी 4.5 में जाना चाहता हूं और आमतौर पर माइक्रोसॉफ्ट तकनीक के साथ रहना चाहता हूं। हालांकि, मेरे पास एक वीएस रिलीज से निपटने के लिए कौशल स्तर नहीं है जो छोटी है। ऐसा लगता है कि यह ईएफ निष्पादन या तो मेरे कंप्यूटर पर एक बग या कुछ अजीब भ्रष्टाचार के कारण हो सकता है - मैं यह पता लगाने की कोशिश कर रहा हूं कि यह मामला क्या है। मैंने एक स्वच्छ मशीन पर वीएस 2013 एक्सप्रेस और एसक्यूएल एसवीआर 2012 स्थापित किया था जिसमें अतीत में इनमें से कोई भी उपकरण नहीं था।

मैं वास्तव में कोई है जो दृश्य स्टूडियो से परिचित है मेरी समस्या को दोहराने के लिए यह केवल कुछ ही मिनट लगते रूप में ऐसा करने के लिए कोशिश देखना चाहते हैं: एमएस एसक्यूएल सर्वर में

  1. , एक छोटे से बनाने एक तालिका के साथ डीबी जिसमें प्राथमिक कुंजी और कुछ डेटा फ़ील्ड हैं और कुछ परीक्षण डेटा के साथ पॉप्युलेट करते हैं - इसे टेस्टटेबल 1 के साथ TinyDB पर कॉल करें।

  2. के लिए वेब वी.एस. 2013 एक्सप्रेस का उपयोग करना, "एएसपी खाली वेब साइट" VB प्रयोग करने के लिए विकल्प के साथ एक "नई वेब साइट" पैदा करते हैं।

  3. किसी ASP App_Code फ़ोल्डर युक्त एक "ADO.Net इकाई डेटा मॉडल" जोड़ें और के रूप में "मॉडल" नाम छोड़ दें।

  4. डीबी से मॉडल जेनरेट करें और "टिनडीबीबी" के लिए "नया कनेक्शन" बनाएं और एंटीटी फ्रेमवर्क 6.0 का उपयोग करें और फिर "टेस्टटेबल 1" चुनें। नोट करें कि नामस्थान "TinyDBModel" है। "फिनिश" पर क्लिक करने से App_Code, अन्य फ़ोल्डरों में कई आइटम उत्पन्न होंगे और web.config भी अपडेट होंगे।

  5. default.aspx नामक एक वेब फार्म जोड़े और यह पर एक gridview खींचें। ग्रिडव्यू के लिए डिज़ाइन मोड में, "नया डेटा स्रोत" और फिर "इकाई" विकल्प का चयन करें (EntityDataSource1 का नोट नाम जो डिफ़ॉल्ट.aspx में दिखाई देता है)। अगला नाम और "नामित कनेक्शन" के अंतर्गत क्लिक करें "TinyDBEntities" - यह वह जगह है जहां मुझे त्रुटि मिलती है "निर्दिष्ट मेटाडेटा संसाधन लोड करने में असमर्थ"।

ध्यान दें कि वीएस 2010 में यह सटीक अभ्यास पूरी तरह से काम करता है और प्रदर्शित सही डेटा के साथ ग्रिड का उत्पादन करता है।

उत्तर

8

दुर्भाग्य से, EntityDataSource नियंत्रण इकाई फ्रेमवर्क, ईएफ 6 के नवीनतम संस्करण के साथ काम नहीं करता है। उम्मीद है कि नियंत्रण वीएस या ईएफ के भविष्य के अद्यतन संस्करण में एक अद्यतन हो जाता है, लेकिन अभी के लिए आप दोनों का एक साथ उपयोग नहीं कर सकते हैं।

कुछ समाधान/विकल्प होते हैं:

  1. वापस एफई 5. करने के लिए ड्रॉप ऐसा करने में,, App_Code फ़ोल्डर से .edmx और .tt फ़ाइलों को हटाने से एफई विधानसभाओं हटाना बिन फ़ोल्डर, और web.config से ईएफ के संदर्भों को हटा दें। फिर साइट का पुनर्निर्माण करें, एक नया ADO.NET इकाई मॉडल जोड़ें और अपना संस्करण चुनें संवाद में संस्करण 5 चुनें। तब edmx diagam खोलते हैं, तो App_Code फ़ोल्डर से .tt फ़ाइलों को हटाने, एक खाली स्थान पर राइट-क्लिक करें और गुण ग्रिड पर विरासत ObjectContext को कोड जनरेशन रणनीति निर्धारित किया है। फिर फिर से पुनर्निर्माण, और यह काम करना चाहिए।

  2. उपयोग मॉडल बाइंडिंग। यह वास्तव में अनुशंसित समाधान है। माइक्रोसॉफ्ट/एफई टीम लोगों EntityDataSource नियंत्रण से दूर रहने और केवल गतिशील डेटा वेब साइटों के लिए इसका इस्तेमाल करने की सिफारिश की गई है, मॉडल बाइंडिंग पसंदीदा solultion है। यह उपयोग करने के लिए बहुत साफ और सीधे आगे है, और आपको अपने प्रश्नों और ऑब्जेक्ट अपडेट पर बहुत अधिक नियंत्रण देता है। मॉडल बाइंडिंग के बारे में अधिक जानकारी के लिए, बाहर की जाँच: http://www.asp.net/web-forms/tutorials/data-access/model-binding/retrieving-data

+1

हाय Imar, आपका पहला सुझाव पूरी तरह से काम करता है और मैं दूसरा सुझाव में मॉडल बाइंडिंग ट्यूटोरियल का पीछा करेंगे - आपको बहुत बहुत धन्यवाद! मुझे ध्यान रखना चाहिए कि दिए गए सही क्रम में आपके चरणों का पालन करना होगा (EDMX प्रॉपर्टी को बदलने से पहले .tt हटाएं)। साथ ही, कॉन्फ़िगरेशन फ़ाइल के ऑटो ईएफ अपडेट को कॉन्फ़िगरेशन को फ़ाइल की शुरुआत में वापस ले जाने के लिए एक कट-पेस्ट की आवश्यकता होती है - कम से कम मेरे छोटे परीक्षण में। व्यापक मुद्दे पर अपनी अंतर्दृष्टि के साथ-साथ आपके विस्तृत समाधान सबसे की सराहना की है! –

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