schema - BizTalk 看不到我的任何 GAC 程序集

标签 schema biztalk gac pipeline

各位, 我意识到这可能看起来像常见的“您没有重新启动主机实例”问题......但还有更多问题。我有一个 BizTalk 应用程序,由几个架构程序集、一个管道程序集、一些映射等组成。 我使用 Visual Studio 2010 将其部署到 BTS2010。我的程序集全部出现在 GAC 中 - 我的架构、我的管道等。架构和管道一样出现在 BT 应用程序中。我的所有 map 都出现在 BT 应用程序中。

当我使用自定义管道发送消息时,我收到“无法获取管道”消息,提示强名称和 GAC。当我不使用管道而只是尝试直接转到包含消息的消息框时,它会提示无法加载我的架构的文档规范,并再次提示 GAC。

我已经验证了数百次,程序集实际上位于 GAC 中,并且我已重新启动(包括完全停止)主机实例数十次。

是否有任何其他奇怪的事情会导致 BizTalk 无法从 GAC 加载我的内容,即使它看起来好像在那里并且我已经重新启动了主机实例?

最佳答案

以下是一些需要检查的事项:

  1. 确保您没有将同一程序集的多个副本/版本部署到 BizTalk 或 GAC。
  2. 验证您的程序集实际上位于相应的 BizTalk 应用程序中,并且/或者其他 BizTalk 应用程序中可能存在的任何父程序集(创建依赖项)是否已在 BizTalk 应用程序的属性中设置为“引用”。
  3. 我发现查看程序集是否在 GAC 中的最可靠方法是使用 gacutil.exe ,例如,从 Visual Studio(或 Windows SDK)命令提示符中,使用命令 gacutil.exe/l。要将结果输出到文件,只需执行 gacutil.exe/l > c:\gac.txt 即可。然后您可以搜索输出以找到您的程序集。也许您可以使用 gacutil/if assemblyname.dll 手动 GAC 每个程序集。 f 将强制覆盖现有程序集。
  4. 在 BizTalk 应用程序中每个 BizTalk 项目的项目属性中,查看“部署”属性并确保“重新部署”和“安装到全局程序集缓存”均设置为。另请仔细检查是否设置了正确的应用程序名称服务器
  5. 检查您计算机的事件日志,看看是否可能出现任何其他错误,这些错误可能发生在您问题中提到的错误之前。
  6. 从 BizTalk 中完全删除应用程序。使用 gacutil.exe 仔细检查所有内容是否已从 GAC 中删除(如上所述)。另外,通过进入 BizTalk 管理控制台 >> 应用程序 >> 所有工件 >> 资源来仔细检查所有内容是否已从 BizTalk 管理数据库中删除,并确保即使在删除应用程序之后也没有留下任何内容完全地。之后,再次部署所有内容。

关于schema - BizTalk 看不到我的任何 GAC 程序集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6098565/

相关文章:

.net - GAC 的位置在哪里?

c# - .NET Core 程序集搜索顺序

c# - Oracle DataAccess 相关 : "The invoked member is not supported in a dynamic assembly."

java - 关于 XML 模式的 Json 到 XML 到 Json

biztalk - 为什么我可以在 BizTalk 2006 中升级属性字段,但可区分字段被禁用?

unit-testing - 阻止 BizTalk 项目调用完全重建?

BizTalk 平面文件架构标记不在行首

migration - Realm 移动平台架构更改

java - hibernate 4 : Why i am getting the AnnotationException : Unknown mappedBy?

nosql - HBase:关于架构设计