2010-08-24 11 views
16

मैं गतिशील रूप से डेटाबेस को केवल सी # कोड का उपयोग करके तालिका संरचना प्राप्त करने की कोशिश कर रहा हूं:Microsoft.SqlServer.ConnectionInfo.dll असेंबली फ़ाइल नहीं मिल रहा है?

using Microsoft.SqlServer.Management.Common; 
using Microsoft.SqlServer.Management.Smo; 

public class LoadStuff 
{ 
    ... 
    public void LoadDatabase(string vDatabaseName) 
    { 
     using (var vSqlConnection = new SqlConnection(DatabaseConnectionString)) 
     { 
      var vConnection = new ServerConnection(vSqlConnection); 
      var vServer = new Server(vConnection); 
      var vDatabase = vServer.Databases[vDatabaseName]; 
      var vTables = vDatabase.Tables; 
     } 
    } 
} 

हालांकि, मुझे संदर्भ जोड़ने के लिए .dll फ़ाइल नहीं मिल रही है। मैं विजुअल स्टूडियो 2010 प्रोफेशनल का उपयोग कर रहा हूं। कोई सुझाव?

उत्तर

26

यह सी: \ प्रोग्राम फ़ाइलों \ microsoft sql सर्वर \ xxx \ sdk \ assemblies में मेरी मशीन पर स्थित है। जहां xxx SQL सर्वर संस्करण संख्या (90 या 100) है। यकीन नहीं है कि यह कैसे मिला।

+0

मिले यह है, धन्यवाद। अब, जब कोई अंतिम उपयोगकर्ता इसे चलाता है, तो क्या यह संदर्भित है .dll फ़ाइल को मेरे सॉफ़्टवेयर में बंडल किया जा रहा है? –

+2

संदिग्ध। स्थानीय को कॉपी करने के लिए सेट करें ताकि इसे आपकी बिल्ड निर्देशिका में कॉपी किया जा सके, जो आपके सेटअप प्रोजेक्ट में शामिल होने के लिए तैयार है। –

+1

असेंबली पाने के लिए मुझे इंस्टॉल करने की क्या ज़रूरत है? – Kiquenet

0

मेरी मशीन पर यह C:\Program Files (x86)\Microsoft SQL Server\100\SDK\Assemblies पर स्थित है। एक विकल्प के रूप में, आप SQL सर्वर 2008 या 2008 R2 सुविधा पैक से स्टैंडअलोन स्थापना भी डाउनलोड कर सकते हैं। व्यक्तिगत x86 और x64 स्थापना संकुल उपलब्ध हैं।

+0

क्या मुझे एसक्यूएल सर्वर 2008 एक्सप्रेस स्थापित करने की आवश्यकता है? – Kiquenet

6

कृपया सही अपने समाधान क्लिक करें और 'संदर्भ जोड़ें' और उसके बाद निम्न DLLs का चयन करें:

  • C: \ WINDOWS \ विधानसभा \ GAC_MSIL \ Microsoft.SqlServer.SMO
  • C: \ WINDOWS \ विधानसभा \ GAC_MSIL \ Microsoft.SqlServer.ConnectionInfo
  • C: \ WINDOWS \ विधानसभा \ GAC_MSIL \ Microsoft.SqlServer.Management.Sdk.sfc
+1

यह मेरे लिए काम नहीं किया, लेकिन एक अच्छा संकेत था। मैं NuGet के माध्यम से इन्हें स्थापित करना समाप्त कर दिया। रिफर्न्स पर राइट क्लिक करें, NuGet पैकेज प्रबंधित करें, Microsoft.sqlserver के लिए खोजें। फिर माइक्रोसॉफ्ट एसक्यूएल सर्वर स्थापित करें। * डीएलएल की रुचि। (फरवरी 2016, विजुअल स्टूडियो 2015 प्रो अपडेट 1) – TomEberhard