asp.net mvc - प्रकार या नामस्थान नाम 'डीबीकॉन्टेक्स्ट' नहीं मिला




asp.net-mvc visual-studio-2010 (20)

मैं एएसपी.नेट एमवीसी (3) के लिए बहुत नया हूं और विजुअल स्टूडियो में बिल्ड त्रुटि को हल करने में कठिनाई हो रही है:

प्रकार या नामस्थान नाम 'डीबीकॉन्टेक्स्ट' नहीं मिला (क्या आप एक प्रयोग निर्देश या असेंबली संदर्भ खो रहे हैं?)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.Data.Entity;

namespace MyProjectName.Models
{   
    public class MachineModel
    {
        // name
        [Required]
        [Display(Name = "Nom de la machine")]
        public string Name { get; set; }

        // IP
        [Required]
        [RegularExpression(@"(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)",
           ErrorMessage = "Donnez une adresse IPv4 valide.")]
        [Display(Name = "Adresse IP de la machine")]
        public string IP { get; set; }
    }

    public class MachineDbContext : DbContext
    {
        public DbSet<MachineModel> Machines{ get; set; }
    }
}

मुझे जो दो त्रुटियां मिल रही हैं वे हैं:

  • प्रकार या नामस्थान नाम 'डीबीकॉन्टेक्स्ट' नहीं मिला (क्या आप एक प्रयोग निर्देश या असेंबली संदर्भ खो रहे हैं?)
  • प्रकार या नामस्थान नाम 'डीबीसेट' नहीं मिला (क्या आप एक प्रयोग निर्देश या असेंबली संदर्भ खो रहे हैं?)

मैं क्या खो रहा हूँ?


1) सभी परियोजनाओं से इकाई फ्रेमवर्क अनइंस्टॉल करना

2) विजुअल स्टूडियो को पुनरारंभ करें

3) सभी आवश्यक परियोजनाओं को पुनर्स्थापित करना

और यह काम करना शुरू कर दिया


systemframework.dll संदर्भित किया गया है system.data.entity दोनों काम किया।


आप पैकेज प्रबंधक कंसोल पर कोशिश कर सकते हैं

पीएम> EntityFrameWork \ सक्षम-माइग्रेशन


आपका प्रोजेक्ट EntityFramework क्लासेस को हल करने में असमर्थ है जब तक कि आप इसे अपनी प्रोजेक्ट में नहीं जोड़ते। EntityFramework समर्थन जोड़ने के लिए आपको इन चरणों का पालन करना होगा: टूल्स-> Nuget पैकेज प्रबंधक -> समाधान ब्राउज़ करने के लिए Nuget पैकेज प्रबंधित करें EntityFramework यह नवीनतम स्थिर EntityFramework संस्करण दिखाता है। वर्तमान में 6.1.3 नवीनतम संस्करण है जो इसे चयनित प्रोजेक्ट के लिए इंस्टॉल करें।


ऐसा कोई मामला हो सकता है जहां आप अपनी हर चीज का संदर्भ लेते हैं और आप डीबी कॉन्टेक्स्ट क्लास पर F12 दबाकर परिभाषा पर भी जा सकते हैं जो आपको System.Data.Entity नेमस्पेस पर ले जाता है लेकिन आपको अभी भी यह गंदा कंपाइलर चेतावनी मिलती है। सुनिश्चित करें कि आपकी परियोजना का लक्ष्य ढांचा और इकाई फ्रेमवर्क संस्करण का मिलान आप मिलान का उपयोग कर रहे हैं। प्रोजेक्ट-> गुण-> एप्लिकेशन टैब पर जाएं। लक्ष्य ढांचे को बदलें (बिल्कुल सही नहीं कह सकता कि कौन सा परीक्षण, त्रुटि और त्रुटि होगी।)। केवल मेरे दो सेंट्स।


चरण-दर-चरण निर्देशों के लिए, यह नई एमवीसी / ईएफ ट्यूटोरियल श्रृंखला देखें: http://www.asp.net/entity-framework/tutorials/creating-an-entity-framework-data-model-for-an-asp-net-mvc-application ट्यूटोरियल मानता है कि आपने नवीनतम एमवीसी 3 टूल्स अपडेट स्थापित किया है और यदि आपके पास नहीं है तो एक लिंक प्रदान करता है।


दूसरों की तरह सुझाव दिया है:

  1. सही संदर्भ और निर्देश जोड़ें। लेकिन यह अभी भी काम नहीं करता है? हो सकता है कि आपको वही समस्या हो जो मैंने किया था:

नीचे एक नज़र डालें और देखें कि क्या आप मुझे बता सकते हैं कि क्या गलत है:

public class PanelLengthContext : DBContext { } ??

सुनिश्चित करें कि कक्षा का नाम गलत नहीं है - (केस संवेदनशीलता)!

  • DbContext सही वर्तनी है।
  • इस तरह यह देखना चाहिए:
  • अक्षर विन्यास की जाँच। अपने जीवन के 20 मिनट बर्बाद मत करो जैसा मैंने किया था। public class PanelLengthContext : DbContext {}

HTH


बस एक त्वरित नोट। यह डीबीसीएन्टेक्स्ट है, डीबीसीएन्टेक्स्ट नहीं। यानी लोअरकेस 'बी' के साथ। मैंने यह खोज लिया क्योंकि मुझे वही समस्या थी, जबकि इंटेलिजेंस काम नहीं कर रहा था जब तक कि मैंने पूरा नाम स्थान सिस्टम टाइप करने की कोशिश नहीं की। डेटा.इन्टिटी ... और नाम और आखिरकार यह लोअरकेस 'बी' विकल्प का सुझाव दिया: -

System.Data.Entity.DbContext


मुझे एक ही समस्या थी .. मेरे पास वीएस -2010 एक्सप्रेस है ..

(नोट: यदि आपको यह समस्या दिखाई देती है तो EntityFramework.dll के संदर्भों को जांचने का प्रयास करें .. यह गायब हो सकता है।)

निम्नलिखित ने मेरे लिए इसे हल किया।

मैंने नवीनतम एमवीसी 3 टूल्स अपडेट स्थापित किया
तो मैंने EntityFramework 4.1 स्थापित किया
या एनयूजीएटी यानी का उपयोग करना। विजुअल स्टूडियो 2010 एक्सप्रेस (टूल्स-> लाइब्रेरी पैकेज मैनेजर -> लाइब्रेरी जोड़ें पैकेज संदर्भ -> ऑनलाइन चुनें -> EntityFramework)

आश्चर्यजनक रूप से काम नहीं किया .. इसलिए मुझे मैन्युअल रूप से "EntityFramework.dll" का संदर्भ जोड़ना पड़ा
डीएल के लिए खोज करने का प्रयास करें .. यहाँ रहो
"सी: \ प्रोग्राम फ़ाइलें (x86) \ संदर्भ असेंबली \ Microsoft \ Framework.NETFramework \ v4.0 \"

यदि आपके पास पहले से ही है .. समायोजित करें '.net' संदर्भ जोड़ें।

नोट: यदि आप NuGet का उपयोग करते हैं, तो यह आपके समाधान निर्देशिका के साथ एक फ़ोल्डर "पैकेज" बनाता है। आपको इसके अंदर "EntityFramework.4.1.10331.0" फ़ोल्डर मिलेगा। "लिब्स" फ़ोल्डर में आपको "EntityFramework.dll" मिलेगा।
ब्राउज़ टैब का उपयोग करके इसका संदर्भ जोड़ें और उपरोक्त डीएल का चयन करें।


मुझे एक ही समस्या थी। मुझे इकाई फ्रेमवर्क के संदर्भ को जोड़ने के बाद "डीबीसीएन्टेक्स्ट" को फिर से लिखना पड़ा और इससे समस्या हल हो गई।
इसका मतलब है कि विजुअल स्टूडियो स्वचालित रूप से कक्षा को पहचानने में सक्षम नहीं था और इसके लिए पुनः टाइप करने के लिए इंतजार कर रहा था। तो सबसे पहले संदर्भ जोड़ने और फिर कोड लागू करने के लिए सबसे अच्छा है। वीएस 2013 - परम इस्तेमाल किया


मुझे बस यह मुद्दा था और मेरे लिए कोई भी अन्य समाधान काम नहीं करता था। मैं विजुअल स्टूडियो 2010 का उपयोग कर रहा हूं और मेरे पास मेरे समाधान में दो परियोजनाएं हैं: यूआईपीरोजेक्ट और डेटाएपप्रोजेक्ट। UIProject में DataAccessProject का संदर्भ है।

मेरा यूआईपीरोजेक्ट नेट फ्रेमवर्क 4 को लक्षित कर रहा था लेकिन मेरा डेटाएपप्रोजेक्ट कुछ कारणों से नेट फ्रेमवर्क 3.5 को लक्षित कर रहा था।

  • मैंने दोनों परियोजनाओं को लक्षित करने के लिए बदल दिया। नेट फ्रेमवर्क 4
  • अनइंस्टॉल किया गया तो एंटीटी फ्रेमवर्क NuGet पैकेज को फिर से इंस्टॉल किया गया।

समस्या हल हो गई। अब मेरे पास EntityFramework और System.Data.Entity दोनों के संदर्भ हैं


मुझे यह समस्या थी, उपर्युक्त उत्तर पढ़ें और entityframework.ddl डाउनलोड करें लेकिन पाया कि यह संदर्भित है। तो मैंने नामस्थान जोड़ा और समस्या हल हो गई

System.Data.Entity का उपयोग कर;

मैं विजुअल स्टूडियो 2010, एसपी 1 स्थापित कर रहा हूं


मेरी भी यही समस्या थी। बाहर निकलता है, आपको EntityFramework.dll संदर्भ (और System.Data.Entity नहीं) की आवश्यकता है।

मैंने इसे एमवीसी म्यूजिकस्टोर एप्लिकेशन से खींच लिया है जिसे आप डाउनलोड कर सकते हैं: http://mvcmusicstore.codeplex.com/

यह एमवीसी के साथ पहले इकाई फ्रेमवर्क कोड का उपयोग करने का एक उपयोगी उदाहरण भी है।


मेरे पास आपके जैसा ही मुद्दा है, मैं इसे नियंत्रक वर्ग में लागू करने में असमर्थ हूं, जबकि यह इसे मॉडल क्लास में रखता है। इन कंट्रोलर क्लास के शीर्ष पर इन कोड जोड़ें

 using TimeSheetManagementSystem.Data;
 using Microsoft.Extensions.Configuration;
 using Microsoft.AspNetCore.Identity.EntityFrameworkCore;
 using Microsoft.EntityFrameworkCore;
 using Newtonsoft.Json;

मैं भी इस मुद्दे से कई बार चिंतित हूं और अंत में समाधान ढूंढता हूं। Edmx फ़ाइल पर जाएं-> डेटाबेस से मॉडल अपडेट करें-> ताज़ा करें-> समाप्त करें। स्वच्छ समाधान-> समाधान पुनर्निर्माण


मैं विजुअल स्टूडियो 2010 एक्सप्रेस का उपयोग कर रहा हूं और C:\Program Files\Microsoft ADO.NET Entity Framework 4.1\Binaries\EntityFramework.dll . C:\Program Files\Microsoft ADO.NET Entity Framework 4.1\Binaries\EntityFramework.dll हल कर रहा C:\Program Files\Microsoft ADO.NET Entity Framework 4.1\Binaries\EntityFramework.dll


यह वास्तव में आसान मदद करता है:

  1. समाधान एक्सप्लोरर में ProjectNAme प्रोजेक्ट का चयन करें।
  2. टूल्स मेनू से, लाइब्रेरी पैकेज मैनेजर चुनें जिसमें उप-मेन्यू है।
  3. उप-मेनू से पैकेज प्रबंधक कंसोल चुनें।
  4. कंसोल के पीएम प्रॉम्प्ट प्रकार इंस्टॉल-पैकेज EntityFramework पर एंटर दबाएं।

विजुअल स्टूडियो एक्सप्रेस एसपी 1 समाधान एक्सप्लोरर> संदर्भ> लाइब्रेरी पैकेज संदर्भ> EntityFramework जोड़ें पर राइट क्लिक करें


वैकल्पिक तरीके से आप HERE जा सकते हैं - निर्देश किसी भी आवश्यक डीएलएल को कैसे स्थापित करें।

या आप NuGet डाउनलोड कर सकते हैं और इसे VS से प्रबंधित कर सकते हैं


http://www.dll-found.com/download/e/EntityFramework.dll डाउनलोड http://www.dll-found.com/download/e/EntityFramework.dll

इसे पेस्ट करें (x86 के लिए)

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\

फिर प्रोजेक्ट पर राइट क्लिक करें -> संदर्भ जोड़ें -> एंटीटी फ्रेमवर्क का चयन करें

बिंगो ......





entity-framework