2010-08-24 7 views
16

Je suis en train d'obtenir dynamiquement une structure de table de base de données en utilisant uniquement le code C# comme suit:Fichier de l'assembly Microsoft.SqlServer.ConnectionInfo.dll introuvable?

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; 
     } 
    } 
} 

Cependant, je ne peux pas trouver le fichier .dll pour ajouter une référence aussi. J'utilise Visual Studio 2010 Professional. Aucune suggestion?

Répondre

26

Il se trouve dans c: \ program files \ microsoft sql server \ xxx \ sdk \ assemblies sur ma machine. Où xxx est le numéro de version SQL Server (90 ou 100). Je ne sais pas comment c'est arrivé.

+0

Je l'ai trouvé, merci. Maintenant, quand un utilisateur final exécute ceci, ce fichier .dll référencé va-t-il être inclus dans mon logiciel? –

+2

Douteux. Définissez Copy Local sur True afin qu'il soit copié dans votre répertoire de construction, prêt à être inclus dans votre projet d'installation. –

+1

De quoi ai-je besoin pour installer des assemblys? – Kiquenet

0

Sur ma machine se trouve au C:\Program Files (x86)\Microsoft SQL Server\100\SDK\Assemblies. Vous pouvez également télécharger l'installation autonome à partir des packs de fonctionnalités SQL Server 2008 ou 2008 R2. Des packages d'installation x86 et x64 individuels sont disponibles.

+0

Ai-je besoin d'installer Sql Server 2008 Express? – Kiquenet

6

S'il vous plaît faites un clic droit de votre solution et sélectionnez 'Ajouter référence', puis sélectionnez les dll suivantes:

  • C: \ WINDOWS \ assembly \ GAC_MSIL \ Microsoft.SqlServer.Smo
  • C: \ WINDOWS \ assembly \ GAC_MSIL \ Microsoft.SqlServer.ConnectionInfo
  • C: \ WINDOWS \ assembly \ GAC_MSIL \ Microsoft.SqlServer.Management.Sdk.Sfc
+1

Cela n'a pas fonctionné pour moi, mais était un bon indice. J'ai fini par les installer via NuGet. Cliquez avec le bouton droit sur Refernces, Gérer les packages NuGet, recherchez Microsoft.sqlserver. puis installez Microsoft.SqlServer. * DLL d'intérêt. (Février 2016, Visual Studio 2015 Pro Update 1) – TomEberhard

Questions connexes