2010-08-24 17 views
16

estoy tratando de obtener dinámicamente una estructura de bases de datos de la tabla utilizando sólo el código C# de la siguiente manera:¿No se puede encontrar el archivo de ensamblaje 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; 
     } 
    } 
} 

Sin embargo, no puedo encontrar el archivo .dll para agregar una referencia también. Estoy usando Visual Studio 2010 Professional. ¿Alguna sugerencia?

Respuesta

26

Se encuentra en c: \ archivos de programa \ microsoft sql server \ xxx \ sdk \ assemblies en mi máquina. Donde xxx es el número de versión de SQL Server (90 o 100). No estoy seguro de cómo llegó allí.

+0

encontrado, gracias. Ahora, cuando un usuario final ejecuta esto, ¿este archivo .dll referenciado va a ser incluido en mi software? –

+2

Dudoso. Establezca Copy Local en True para que se copie en su directorio de compilación, listo para ser incluido en su proyecto de instalación. –

+1

¿Qué necesito instalar para obtener ensamblajes? – Kiquenet

0

En mi máquina se encuentra en C:\Program Files (x86)\Microsoft SQL Server\100\SDK\Assemblies. Como alternativa, también puede descargar la instalación independiente de los paquetes de características 2008 o 2008 R2 de SQL Server. Hay paquetes de instalación individuales x86 y x64 disponibles.

+0

¿Debo instalar Sql Server 2008 Express? – Kiquenet

6

Por favor, haga clic derecho en su solución y seleccione 'Agregar referencia' y luego seleccionar los siguientes archivos DLL:

  • 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

Esto no funcionó para mí, pero fue una buena pista. Terminé instalando estos a través de NuGet. Haga clic derecho en Referencias, Administrar paquetes NuGet, busque Microsoft.sqlserver. luego instale Microsoft.SqlServer. * DLL's de interés. (Feb 2016, Visual Studio 2015 Pro Actualización 1) – TomEberhard

Cuestiones relacionadas