GAC中的BizTalk自定义管道组件未更新

时间:2015-05-26 05:56:32

标签: biztalk gac biztalk-2013 custom-pipeline-component

我最近开始关注this method for Pipeline Component Development并且它一直在为开发部分工作做得很好。它甚至可以很好地用于组件/管道的第一次部署。

但是,现在的问题是,当我将更改部署到管道组件DLL时,我无法让它们更新。

我将帖子添加到GAC中。然后我从BizTalk导出包含我的程序集的MSI并导入,使用"覆盖"选项。我重新启动主机实例,重新启动IIS(因为我的隔离主机正在使用该组件),但我对dll所做的更改没有发生在(在这种情况下)登台服务器上。

我已经检查了MSIL文件夹,文件夹和dll确实正在更新日期修改,但是当我发送邮件时,我的更改没有发生。

我是否缺少一个步骤?我是否必须增加组件本身的版本号?我增加了版本并重新部署了引用组件的管道,甚至没有启动更改。

2 个答案:

答案 0 :(得分:1)

我发现了我的问题。在我的开发环境中,我不得不:

  • 右键点击<myApplication>/Resources
  • 中的资源
  • 选择&#39;修改&#39;然后按
  • &#39;刷新&#39;按钮。
  • 导航到GAC目录,其中安装了自定义管道的dll C:\Windows\Microsoft.NET\assembly\GAC_MSIL\<myComponent>\v4.0_<myVersion>__<myPublickey>
  • 重启主机实例(不确定是否完全必要)

然后我可以导出dll并将其导入目标服务器(选中Overwrite Resources)。如果没有刷新,则无法在目标服务器上识别dll更改。希望有一天能节省一些时间。

答案 1 :(得分:0)

您不必将程序集导出到msi中进行安装。在资源区域中添加或更新它将与导入相同。我们定期使用这种方法。

我通常执行增加版本号,因为它有助于确保我希望运行的代码正在运行。在生产问题的情况下,它还可以简单地回滚到以前的版本。