Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

एंटिटी फ्रेमवर्क डेटाबेस।सेटइनिशियलाइज़र बस काम नहीं कर रहा है

डेटाबेस केवल तभी बनाया जाएगा जब आप वास्तव में संदर्भ का उपयोग करेंगे।

यदि आपने अपने प्रारंभकर्ता में बीज विधि को निम्नानुसार ओवरराइड किया है:

protected override void Seed(MyContext context){...}

सीड कोड केवल तभी चलेगा जब आप MyContext के इंस्टेंस का उपयोग करेंगे।

इसलिए जब आप उपयोग करते हैं तो यह काम करता है

var ctx = new MyContext();
ctx.Database.Initialize(true);

आप हमेशा Global.asax.cs में Application_Start() विधि में अपने संदर्भ का उपयोग करके इसे बनाने के लिए बाध्य कर सकते हैं जैसे:

        System.Data.Entity.Database.SetInitializer(new MyInitializer());

        MyContext db = new MyContext();
        db.Database.Initialize(true);
        //or even something like db.Users.Count();

या इसे बाद में तब बनाया जाएगा जब आप अपने संदर्भ का उपयोग करेंगे। ऐसा लग सकता है कि इसने काम करना बंद कर दिया है क्योंकि आपने कुछ कोड हटा दिए हैं जो एप्लिकेशन स्टार्टअप पर संदर्भ का उपयोग करेंगे।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मापदंडों के बिना SQL इंजेक्शन से बचना

  2. जॉइन का उपयोग करते समय क्लॉज बनाम चालू कहां है

  3. वस्तु को नहीं छोड़ा जा सका क्योंकि यह एक विदेशी कुंजी बाधा द्वारा संदर्भित है - SQL सर्वर / TSQL ट्यूटोरियल भाग 74

  4. SQL IN क्वेरी अजीब परिणाम उत्पन्न करती है

  5. SQL सर्वर 2008 भूगोल STDistance () मान