2008-10-06 11 views
10

विशेष रूप से, वीएस 2008 में, मैं डेटा स्रोत से कनेक्ट करना चाहता हूं जिसे आप स्वचालित रूप से जेनरेट किए गए App_Data फ़ोल्डर (an .mdf "डेटाबेस") पर राइट-क्लिक करके प्राप्त कर सकते हैं। आसान लगता है, और यह एक बार आप जानते हैं कि कैसे।मैं एक साधारण वेब प्रोजेक्ट में .mdf (Microsoft SQL Server डेटाबेस फ़ाइल) से कैसे कनेक्ट करूं?

Choos [ई], डाटा मेनू से "जोड़ें नए डेटा स्रोत" [और कनेक्शन विज़ार्ड का पालन करें]

बहुत आसान छोड़कर:।

उत्तर

9

तो यहाँ MSDN से जवाब कि मेरे पास कोई डेटा मेनू नहीं है। उपकरण पर

  • क्लिक करें,
  • चुनें "Microsoft SQL सर्वर डेटाबेस फ़ाइल" >> डाटाबेस से कनेक्ट करें ... डिफ़ॉल्ट डेटा प्रदाता लेते हैं, और: यदि आप एक डेटा मेनू की जरूरत नहीं है, तो निम्न करें ठीक है
  • अगली स्क्रीन पर, अपनी डेटाबेस फ़ाइल पर ब्राउज़ करें, जो कहीं भी आपके वीएस समाधान फ़ोल्डर संरचना में होगा।

कनेक्शन का परीक्षण करें। यह अच्छा होगा। यदि आप web.config पर स्ट्रिंग जोड़ना चाहते हैं, तो उन्नत बटन पर क्लिक करें और डेटा स्रोत लाइन (डायलॉग बॉक्स के नीचे) की प्रतिलिपि बनाएँ, और इसे web.config में उचित स्थान पर कनेक्शन स्ट्रिंग में पेस्ट करें फ़ाइल। आपको "AttachDbFilename" विशेषता और मान जोड़ना होगा। उदाहरण:

उन्नत पैनल से कच्चे पाठ:

Data Source=.\SQLEXPRESS;Integrated Security=True;Connect Timeout=30;User Instance=True 

web.config में वास्तविक प्रविष्टि:

<add name="SomeDataBase" connectionString="Data Source=.\SQLEXPRESS; 
AttachDbFilename=C:\Development\blahBlah\App_Data\SomeDataFile.mdf; 
Integrated Security=True; Connect Timeout=30; User Instance=True" /> 
20

एक महान संसाधन मैं हमेशा के आसपास रखने connectionstrings.com है। जब आप कोई उदाहरण नहीं पा रहे हैं तो इन कनेक्शन स्ट्रिंग को ढूंढना वास्तव में आसान है।

विशेष रूप से this page आपकी समस्या के लिए आवेदन किया

एक स्थानीय SQL सर्वर एक्सप्रेस उदाहरण

Driver={SQL Native Client};Server=.\SQLExpress;AttachDbFilename=c:\asd\qwe\mydbfile.mdf; Database=dbname;Trusted_Connection=Yes; 
+0

बहुत बढ़िया जोड़ें। मैं उस पर बुकमार्क करूँगा। – MrBoJangles

+0

यह एक उपयोगी लिंक है .. – Tom

3

बस एक और करने के लिए कनेक्ट पर एक डेटाबेस फ़ाइल संलग्न करें - मैं हमेशा पर एक UDL फ़ाइल रखा है मेरा डेस्कटॉप आसानी से कनेक्शन स्ट्रिंग बनाने और परीक्षण करने के लिए। यदि आपने पहले कभी नहीं किया है - एक नई टेक्स्ट फ़ाइल बनाएं और इसे connection.udl पर नाम दें (एक्सटी एकमात्र महत्वपूर्ण हिस्सा है)। फ़ाइल खोलें, प्रदाता टैब पर शुरू करें और अपना रास्ता काम करें। एक बार कनेक्शन से खुश होने के बाद फ़ाइल को एक .txt एक्सटेंशन देकर नाम बदलें। फ़ाइल खोलें और स्ट्रिंग की प्रतिलिपि बनाएँ - यह अपेक्षाकृत आसान है और इसे उपयोग करने से पहले कनेक्शन का परीक्षण करने देता है।

+0

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

3
<add name="Your Database" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Expanse.mdf;Integrated Security=True;User Instance=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient"/> 
0

अपने Login.aspx.cs (सबमिट बटन पर क्लिक करें घटना में अपने प्रवेश पृष्ठ के लिए फ़ाइल के पीछे कोड) में

string constr = @"Data Source=(LocalDB)\v11.0; AttachDbFilename=|DataDirectory|\myData.mdf; Integrated Security=True; Connect Timeout=30;"; 
using (SqlConnection conn = new SqlConnection(constr)) 
string constr = ConfigurationManager.ConnectionStrings["myData"].ToString(); 

using (SqlConnection conn = new SqlConnection(constr)) 
{ 
sqlQuery=" Your Query here" 
SqlCommand com = new SqlCommand(sqlQuery, conn); 
com.Connection.Open(); 
string strOutput = (string)com.ExecuteScalar(); 
} 
+0

इसे कुछ संपादन की आवश्यकता है।कुछ लाइनें और चर दोहराए जाते हैं। – Yster

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