我最近开始关注this method for Pipeline Component Development并且它一直在为开发部分工作做得很好。它甚至可以很好地用于组件/管道的第一次部署。
但是,现在的问题是,当我将更改部署到管道组件DLL时,我无法让它们更新。
我将帖子添加到GAC中。然后我从BizTalk导出包含我的程序集的MSI并导入,使用"覆盖"选项。我重新启动主机实例,重新启动IIS(因为我的隔离主机正在使用该组件),但我对dll所做的更改没有发生在(在这种情况下)登台服务器上。
我已经检查了MSIL文件夹,文件夹和dll确实正在更新日期修改,但是当我发送邮件时,我的更改没有发生。
我是否缺少一个步骤?我是否必须增加组件本身的版本号?我增加了版本并重新部署了引用组件的管道,甚至没有启动更改。
答案 0 :(得分:1)
我发现了我的问题。在我的开发环境中,我不得不:
<myApplication>/Resources
C:\Windows\Microsoft.NET\assembly\GAC_MSIL\<myComponent>\v4.0_<myVersion>__<myPublickey>
然后我可以导出dll并将其导入目标服务器(选中Overwrite Resources
)。如果没有刷新,则无法在目标服务器上识别dll更改。希望有一天能节省一些时间。
答案 1 :(得分:0)
您不必将程序集导出到msi中进行安装。在资源区域中添加或更新它将与导入相同。我们定期使用这种方法。
我通常执行增加版本号,因为它有助于确保我希望运行的代码正在运行。在生产问题的情况下,它还可以简单地回滚到以前的版本。