private void RaiseDatabaseFoundEventHander(DATA data) { if (DatabaseFound != null) DatabaseFound(this, data); }
public DataTable GetAllDatabase(string server, string user, string password, bool auth) { string connectionString = String.Format("data source={0};integrated security=SSPI;Initial Catalog=master;", server); if (!auth) connectionString = String.Format("server={0};user id={1};password={2};", server, user, password); Cursor.Current = Cursors.WaitCursor; DataTable dataTable = new DataTable(); dataTable.Columns.Add("Database"); SqlConnection cnn = Connection(connectionString); try { if (cnn.State != ConnectionState.Open) return dataTable; ServerConnection srvConn = new ServerConnection(cnn); Server srvSql = new Server(srvConn); foreach (Database dbServer in srvSql.Databases) { if (dbServer.IsSystemObject) continue; dataTable.Rows.Add(new object[] { dbServer.Name }); DATA item = new DATA(dbServer.Name, dbServer.Version.ToString(), dbServer.CreateDate, dbServer.PrimaryFilePath); RaiseDatabaseFoundEventHander(item); } } catch (Exception ex) { RaiseDatabaseErrorEventHander(ex.Message); } finally { cnn.Close(); } RaiseDatabaseCompleteEventHander(dataTable); return dataTable; }