1

当我为动态发送端口导出绑定时,绑定文件中没有显示处理程序名称。那么是否有任何替代方法。

4

2 回答 2

2

Stephen F March 的一个建议是使用 PowerShell 脚本来设置这些。

如何在部署时为 BizTalk 2013 动态发送端口配置发送处理程序?

param
(
 [string] $bizTalkDbServer = ".",    
 [string] $bizTalkDbName = "BizTalkMgmtDb",
 [string] $fileHostInstance = "SendingHost",
 [string] $sendPortName = "sm_dynamic_sp_test"

)

[System.reflection.Assembly]::LoadWithPartialName("Microsoft.BizTalk.ExplorerOM") | Out-Null

$catalog = New-Object Microsoft.BizTalk.ExplorerOM.BtsCatalogExplorer
$catalog.ConnectionString = "SERVER=$bizTalkDbServer;DATABASE=$bizTalkDbName;Integrated Security=SSPI"

foreach($sp in $catalog.SendPorts)
{
 if($sp.Name -eq $sendPortName)
 {
  "Found send port $($sp.Name), analyzing send handler"

  foreach($sh in $sp.DynamicSendHandlers)
  {
   if($sh.SendHandler.TransportType.Name -eq "FILE")
   {   
    if($sh.SendHandler.Host.Name -ne $fileHostInstance)
    {
     "Changing $($sh.Name) send handler to '$fileHostInstance' from '$($sh.SendHandler.Host.Name)'"
     $sp.SetSendHandler("FILE", $fileHostInstance)
    }
    else
    {
     "Send handler for $($sp.Name) is already '$fileHostInstance' ignorning .. "
    }   
   }
  }
 }
}

$catalog.SaveChanges()

Sandro Pereira 还刚刚发布了一篇名为BizTalk DevOps 的博客:如何使用 PowerShell 配置默认动态发送端口处理程序

于 2016-01-25T20:01:27.257 回答
0

BizTalk 2013 没有开箱即用,您需要使用上面列出的 powershell。

对于 BizTalk 2016 + CU8(仅限及更高版本),当您导出时,您将能够在绑定文件中获取主机详细信息。

对于 BizTalk 2020 使用 CU2 , CU1 有这个问题

于 2021-10-25T14:28:22.490 回答