37

मैं विजुअल वेब डेवलपर 2010 एक्सप्रेस में काम कर रहा हूं, और एंटीटी फ्रेमवर्क कोड-प्रथम सीटीपी का उपयोग कर रहा हूं। मैं इसे नए SQL सर्वर सीई के साथ करने में सक्षम हूं लेकिन SQL सर्वर एक्सप्रेस के साथ काम करने के लिए मैं कनेक्शन स्ट्रिंग नहीं ढूंढ पा रहा हूं।इकाई फ्रेमवर्क कोड के लिए SQL सर्वर एक्सप्रेस कनेक्शन स्ट्रिंग पहले

यह SQL सर्वर सीई बीटा का उपयोग करके, ठीक काम करता है (डेटाबेस बनाया गया है और मॉडल परिवर्तनों पर पुनर्निर्मित)।

<add name="TrempimModel" 
    connectionString="data source=|DataDirectory|TrempimModel.sdf" 
    providerName="System.Data.SqlServerCe.4.0" /> 

यह एक है, जो मैं aspnetdb कनेक्शन स्ट्रिंग से नकल,

<add name="TrempimModel" 
    connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI; 
    AttachDBFilename=|DataDirectory|TrempimModel.mdf;User Instance=true" 
    providerName="System.Data.SqlClient" /> 

स्टार्टअप पर निम्न संदेश देता है:

इस कार्य को पूरा करने में असमर्थ। आपूर्ति किए गए SqlConnection प्रारंभिक कैटलॉग

तो यह SQL सर्वर एक्सप्रेस के साथ कैसे काम करें?

उत्तर

59
यहाँ कनेक्शन स्ट्रिंग के साथ समस्या यह

है:

<add name="TrempimModel" 
    connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI; 
         AttachDBFilename=|DataDirectory|aspnetdb.sdf; 
         User Instance=true" 
    providerName="System.Data.SqlClient" /> 

आप मूल रूप से तय कर रहे हैं क्या "सर्वर" आप कनेक्ट कर रहे हैं - लेकिन आप नहीं रहे कह फ़ाइल के अंदर क्या डेटाबेस से कनेक्ट करने के सेवा मेरे। इसके अलावा - SQL सर्वर एक्सप्रेस डेटाबेस फ़ाइलों के लिए फ़ाइल एक्सटेंशन .mdf है ( .sdf नहीं - यह SQL सर्वर कॉम्पैक्ट संस्करण है) - आपको इसे भी ध्यान में रखना होगा! (ओपी द्वारा टिप्पणी के अनुसार, एक टाइपो था)।

<add name="TrempimModel" 
    connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI; 
         database=YourDatabaseName; 
         AttachDBFilename=|DataDirectory|aspnetdb.mdf; 
         User Instance=true" 
    providerName="System.Data.SqlClient" /> 

तो यह ठीक काम करना चाहिए:

आप को परिभाषित करने के लिए एक अतिरिक्त database=.... (या Initial Catalog=.....) अपने कनेक्शन स्ट्रिंग में की जरूरत है।

अधिक पृष्ठभूमि और नमूने के टन के लिए, ConnectionStrings वेबसाइट देखें।

+0

ए) एसडीएफ एक्सटेंशन एक टाइपो था। मैं कनेक्शन स्ट्रिंग में एमडीएफ का उपयोग कर रहा था - इसे प्रतिबिंबित करने के लिए प्रश्न संपादित किया। डेटाबेस को निर्दिष्ट करने के सुझाव ने मेरी समस्या हल की - धन्यवाद। मैं फ़ाइल नाम के समान नाम का उपयोग कर रहा हूं - क्या यह सही है या क्या यह लाइन के नीचे कुछ समस्या पैदा कर सकता है? – GilShalit

+0

@GilShalit: यह इस बात पर निर्भर करता है कि आपके एमडीएफ के अंदर डेटाबेस वास्तव में क्या कहा जाता है; संभावना अधिक है कि यह फ़ाइल नाम के समान नाम है। आपको यह सत्यापित करना होगा कि एमडीएफ को एक पूर्ण SQL सर्वर आवृत्ति से जोड़कर और देखें कि एमडीएफ के अंदर संग्रहीत डेटाबेस वास्तव में क्या कहा जाता है। –

+0

जैसा कि आपको इस बारे में बहुत कुछ पता है, मुझे नहीं लगता कि आपके पास एक पल है, तो आप मेरे प्रश्न पर एक नज़र डाल सकते हैं ... मैं काम करने के लिए कनेक्शन स्ट्रिंग प्राप्त कर सकता हूं लेकिन फिर यदि मैं संपादित/उपयोग करने का प्रयास करता हूं डेटाबेस, मुझे बहुत सारी त्रुटियां मिलती हैं :(- http://stackoverflow.com/questions/5924553/entity-framework-error-connecting-to-sql-server-express-after- माउंटिंग- कनेक्टिंग और एमएसडीएन को दोबारा पोस्ट किया गया - http: //social.msdn.microsoft.com/Forums/en-US/adodotnetentityframework/thread/1ec3ff63-d8a1-4844-942d-c2c05ed8078e – Wil

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

  • कोई संबंधित समस्या नहीं^_^