部署BizTalk Schema解决方案而无需重新部署从属解决方案

我有三种解决方案。一种是模式解决方案,其中仅包含模式文件,可以将其称为SchemaSolution。

我的其他两个解决方案中都引用了SchemaSolution,因为Solution1在SchemaSolution中创建了该模式的xml实例,并将其作为自相关的消息放在消息框中。

这很神奇,但是如果我要更新引用SchemaSolution的解决方案之一(部署到BizTalk),则总是必须删除其他解决方案。这太可怕了,直到现在我才找到解决方案。

有(没有hacky)的方法吗?我曾考虑过将所有项目合并到一个解决方案中,但这是我能想到实现目标的最坏情况。

如何在不删除和重新部署所有内容的情况下部署在不同解决方案中引用的项目?

正在使用BizTalk 2013R2

sonyjkjkjk 回答:部署BizTalk Schema解决方案而无需重新部署从属解决方案

不,不支持此操作,不建议您尝试采用这种方法(肯定需要更改BizTalk数据库,我认为这甚至是Microsoft所不允许的)。

我可以给您3个选择:

  • 使SchemaSolution尽可能小,例如将其分解为每个进程多个方案解决方案,因此您需要更改解决方案的机会会较小。理想情况下,在此解决方案中,每个架构将有1个程序集/项目,因此无需重新部署即可添加新架构。
  • 另一种选择是将模式的副本复制到项目中,这是您可以做出的设计选择,但是由于您需要在管道中指定模式(或者不知道您选择哪个模式),因此需要做更多的工作。的意思),并且在多个项目中更改相同的架构有双重工作。缺点是,架构与BizTalk不同,因此您不能在没有引用的情况下在另一个项目中使用它。
  • 您最后的选择是完全摆脱该架构的依赖性,您可以通过创建自己的内部/通用/ cdm架构来实现,理想情况下,它会更健壮且不易更改。该模式仍将被多个项目引用,但是由于您是负责该模式的人,因此可以根据自己的喜好对其进行预测和塑造。再一次,理想情况下,在此解决方案中,每个架构将有1个程序集/项目,因此无需重新部署即可添加新架构。
,

我在解决方案中有一个非常相似(甚至不同)的问题。 我有一组依赖于简单模式项目的集成项目。如果部署一个集成项目,则必须部署架构项目,这意味着必须部署所有集成项目!

为了独立地部署它们,我只是在架构项目的属性(在VS中)中将重新部署标志从true更改为false。

VS Redeploy Flag

这使我可以根据需要重新部署许多其他依赖项目,而不必删除或弄乱。我可以部署一个集成项目,而不会影响其他项目。 唯一的警告是,由于某种原因,当您重新部署VS时,将在模式项目上将重新部署设置为False的事实标记为错误,并指出未部署其中一个项目。 这不是真正的错误,更多是警告imo。

我一直在BT2016中这样做,我想你可以在2013年做到这一点

本文链接:https://www.f2er.com/3067262.html

大家都在问