Reputation:
I'm trying to dynamically get a databases Table structure using only C# code as follows:
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;
}
}
}
However, I cannot find the .dll file to add a reference too. I'm using Visual Studio 2010 Professional. Any suggestions?
Upvotes: 19
Views: 46503
Reputation: 941545
It is located in c:\program files\microsoft sql server\xxx\sdk\assemblies on my machine. Where xxx is the SQL Server version number (90 or 100). Not sure how it got there.
UPDATE: it has been replaced by SMO (SQL Server Management Objects). The Nuget package is here. Follow the first link for documentation.
Upvotes: 27
Reputation: 79
Please right click your solution and select 'Add reference' and then select the following dlls:
Upvotes: 7
Reputation: 16828
On my machine it is located at C:\Program Files (x86)\Microsoft SQL Server\100\SDK\Assemblies
. As an alternative, you can also download the standalone installation from the SQL Server 2008 or 2008 R2 feature packs. There are individual x86 and x64 installation packages available.
Upvotes: 0