【发布时间】:2010-06-30 13:38:18
【问题描述】:
我正在使用 BTSTask 和 BTSControl 在 BizTalk 2006 上执行一些部署操作。我们转移到 BizTalk 2009 并且这些工具似乎不适用于 BT2009。 BT2009有具体版本或新工具吗?
【问题讨论】:
-
您对我正在使用的解决方案的详细信息感兴趣吗?
标签: biztalk biztalk-2009
我正在使用 BTSTask 和 BTSControl 在 BizTalk 2006 上执行一些部署操作。我们转移到 BizTalk 2009 并且这些工具似乎不适用于 BT2009。 BT2009有具体版本或新工具吗?
【问题讨论】:
标签: biztalk biztalk-2009
我会改为查看BizTalk Deployment Framework。它建立在 MSBuild 和 WIX 之上,可以做任何事情,从添加开发人员工具到快速部署用于开发的东西,再到通过 WIX 处理补丁。我强烈推荐它。
【讨论】:
我确实遇到了 BizTalk 2009 的相同限制,但设法在 PowerShell 脚本中使用 Microsoft.BizTalk.ExplorerOM 解决了问题。
停止和启动 BizTalk 应用程序的示例
(关注this excellent blog post on BizTalk Deployments with PowerShell)
param
(
[switch] $start,
[switch] $stop,
[string] $appName,
[string] $connectionstring
)
function Stop-Application
{
$app = $catalog.Applications[$appName]
if ($app -eq $null)
{
Write-Host "Application " $appName " not found" -fore Red
}
else
{
if ($app.Status -ne 2)
{
$null = $app.Stop(63)
$null = $catalog.SaveChanges()
$null = $catalog.Refresh()
Write-Host "Stopped application: " $appName -fore Green
}
else
{
Write-Host "Application: " $appName " already stopped" -fore Yellow
}
}
}
function Start-Application
{
$app = $catalog.Applications[$appName]
if ($app -eq $null)
{
Write-Host "Application " $appName " not found" -fore Red
}
else
{
if ($app.Status -eq 2)
{
$null = $app.Start(63)
$null = $catalog.SaveChanges()
$null = $catalog.Refresh()
Write-Host "Started application: " $appName -fore Green
}
else
{
Write-Host "Application: " $appName " already started" -fore Yellow
}
}
}
$null = [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.BizTalk.ExplorerOM")
$catalog = New-Object Microsoft.BizTalk.ExplorerOM.BtsCatalogExplorer
$catalog.ConnectionString = $connectionstring
if ($catalog.Applications -eq $null)
{
Write-Host "Application catalog is empty" -fore Red
}
if ($start)
{
Start-Application
}
if ($stop)
{
Stop-Application
}
我们的 BizTalk 部署由 MSBuild、BTSTask 和 ExplorerOM 通过 PowerShell 驱动。我什至设法解决了部署其他程序集(或端口)所依赖的程序集时的问题。
【讨论】:
我没有使用 BTSTask 或 BTSControl 的个人经验,但实际上我已经能够利用 Team Foundation Server 在 BizTalk 2009 上取得巨大成功。我基本上按照下面概述的文章进行了操作,然后根据我自己的环境对其进行了定制:
BizTalk 2009 - Build & Deploy automation with Team Foundation Server 2008 – Part 1
【讨论】: