Visual Studio 2008 中 BizTalk 架构项目的参考问题

Posted

技术标签:

【中文标题】Visual Studio 2008 中 BizTalk 架构项目的参考问题【英文标题】:Reference trouble with BizTalk schema project in Visual Studio 2008 【发布时间】:2014-08-24 06:37:12 【问题描述】:

在大型 VS 2008 解决方案中,我们有不同的架构项目和映射项目。映射项目引用了适当的模式项目,这总体上运行良好。

但是,最近我添加了一个新的架构项目,它始终给出了同样的问题。当我向其中添加新架构,并且我想在已经引用该架构项目的映射项目中使用该架构时,映射无法使用消息验证

无法加载源/目标架构 [...]。文件/类型不存在,或者如果项目依赖存在,则不构建依赖项目。

很公平,我将重新构建架构项目,这应该可以解决错误。但对于这个特定的模式项目来说,这还不够。我必须删除重新添加架构项目引用才能消除此错误。这很烦人,而且它适用于其他项目而无需此额外步骤,那我该怎么办?

【问题讨论】:

【参考方案1】:

您遇到的是 BizTalk Server 2009 项目系统的一个已知问题。

那个版本有许多令人沮丧的设计师问题。后来的 Service Pack 缓解了许多问题,但不是全部。

针对您所面临的问题,最常见的解决方法是翻转 Reference 的 Copy Local 属性。

【讨论】:

您好,Biztalker 同胞 :) 是的,这是真的,BizTalk 2009 中存在 很多与 Visual Studio 相关的错误以及其他令开发人员烦恼的问题。 我在 BizTalk 2013 R2 / Visual Studio 2013 中也遇到了这个错误。通过翻转 Copy Local,您是指 True to False 还是 False to True? @MDeSchaepmeester - 只是想确认一下,John 的建议对你有用吗? @FMFF 我不记得了,而且我前段时间换了工作,所以我无法真正检查。我记得的是,无论我做什么,我总是在使用 Visual Studio 和 BizTalk 时遇到问题,所以我会说它并没有真正帮助。【参考方案2】:

我不知道您多久重建一次架构项目,但在您的解决方案中引用磁盘上的架构 DLL 而不是引用架构项目可能会很方便。

但请记住,架构中的更改将需要您再次重建架构项目,然后再重新构建映射项目以考虑新版本。

【讨论】:

这是否有任何潜在的陷阱,特别是在部署方面?我想知道使用该方法会发生什么,在部署地图项目时,它不会像通常那样部署架构项目...... 以我的拙见:我不知道。我经常这样做,从来没有任何问题,除了你必须提醒自己在每次更改后重建架构项目。【参考方案3】:

这可能不是一般的最佳方法,但如果它对某人有帮助,我会在之后收到此错误...

    复制现有架构文件并为其指定一个临时文件名。我想保留原件以供参考,同时我完全重写了这个过程。 最终我删除了原始文件并将我的副本重命名为原始文件的名称。 即使我的架构项目中有一个这样命名的架构文件,地图也无法再找到架构。当被要求“选择一个新架构”时,列表中只有临时架构名称。

对我来说,解决方法是我需要手动更新架构属性中的“类型名称”字段以匹配文件名并重新构建。 “类型名称”仍然设置为我在重写时使用的临时文件名。

【讨论】:

以上是关于Visual Studio 2008 中 BizTalk 架构项目的参考问题的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Visual Studio 2008 中打开使用 Visual Studio 2005 创建的 rdl?

我可以在 Visual Studio 2008 中使用 Visual Studio 6 编译的 C++ 静态库吗?

visual studio 2008 c++ 中怎样添加动态链接库?

从 Visual Studio 2008 升级到 Visual Studio 2010 速成版

如何在visual studio2008中创建,编译和运行C++程序,

使用部分类和设计器文件将 Visual Studio 2003 表单转换为 Visual Studio 2005/2008 表单