Assembly no soportado: Microsoft.BizTalk.Databases.dll
Microsoft.BizTalk.Databases.dll es un assembly no soportado por Microsoft en el framework de BizTalk Sever que provee funcionalidad para consultar los servidores existentes en la red y las bases de datos existentes en estos. Para ello este assembly provee 5 clases: BizTalkDatabaseInfo, Database, DatabaseCollection, Server, y ServerCollection.
Por ejemplo, para consultar los servidores de SQL Server existentes se puede utilizar las clases ServerCollection y Server.
foreach
(string name in Microsoft.BizTalk.Databases.ServerCollection.GetSqlServerNames())
{
Microsoft.BizTalk.Databases.Server server = new Microsoft.BizTalk.Databases.Server(name);
System.Console.WriteLine("Server name: " + server.Name);
System.Console.WriteLine("Platform Identifier: " + server.PlatformIdentifier.ToString());
System.Console.WriteLine("Type: " + server.Type.ToString());
System.Console.WriteLine("Version: " + server.Version.ToString());
}
Y para consultar las bases de datos de cada servidor basta con utilizar el siguiente código, así mismo por cada base de datos es puede consultar si pertenece o no a BizTalk Server:
Microsoft.BizTalk.Databases.Server server = new Microsoft.BizTalk.Databases.Server("server_name");
bool isBtsDb = true;
foreach (Microsoft.BizTalk.Databases.Database database in server.GetDatabaseCollection())
{
System.Console.WriteLine("Database: " + database.Name);
try
{
isBtsDb = database.IsBizTalkDatabase;
if ( isBtsDb )
System.Console.WriteLine("///// Begin - BizTalk Database ");
}
catch
{
isBtsDb = false;
}
System.Console.WriteLine("Is BizTalk database: " + isBtsDb.ToString());
if (isBtsDb)
{
System.Console.WriteLine("BizTalk Db name: " + database.BizTalkDatabaseInfo.Name);
System.Console.WriteLine("BizTalk Db version: " + database.BizTalkDatabaseInfo.Version.ToString());
System.Console.WriteLine("BizTalk Db description: " + database.BizTalkDatabaseInfo.Description);
System.Console.WriteLine("///// End - BizTalk Database ");
}
}
Nota: aunque se puede consultar si una base de datos pertenece o no a BizTalk Server, esta funcionalidad no es valida y solo se presenta en el código a nivel de ejemplo. Lo anterior se da por que al consultar la información de la base de datos solo revisa la ManagementBizTalkDb y no otras como BizTalkMsgbDb. |
Autor: Carlos Medina
Este mensaje se proporciona "como está" sin garantías de ninguna clase, y no otorga ningún derecho