Stored procedures BizTalk 2010 WCF自定义适配器和数据库对象所有权

Stored procedures BizTalk 2010 WCF自定义适配器和数据库对象所有权,stored-procedures,biztalk,biztalk-2010,Stored Procedures,Biztalk,Biztalk 2010,我创建了一个BizTalk应用程序,它包含两个业务流程,每个业务流程对应于作为SOAP服务公开的方法。每个方法在SQL Server中运行特定的存储过程并返回结果。它在开发和测试中都运行良好,但当我投入生产时,我遇到了一个困难。在我们的测试环境中,存储过程的所有权是DBO。但在生产中,情况并非如此。是[味精]。所以这个过程是[database].[msg].[stored_procedure],而不是[database].[dbo].[stored_procedure],所以我得到了一个错误 我

我创建了一个BizTalk应用程序,它包含两个业务流程,每个业务流程对应于作为SOAP服务公开的方法。每个方法在SQL Server中运行特定的存储过程并返回结果。它在开发和测试中都运行良好,但当我投入生产时,我遇到了一个困难。在我们的测试环境中,存储过程的所有权是DBO。但在生产中,情况并非如此。是[味精]。所以这个过程是[database].[msg].[stored_procedure],而不是[database].[dbo].[stored_procedure],所以我得到了一个错误

我尝试更改SOAP操作头,但得到一个错误,指出(正确地)存储过程SP_XXXX1不存在

错误描述:Microsoft.ServiceModel.Channel.Common.MetadataException:StoredProcess类型的对象[dbo].[SP_XXXX1]不存在


我尝试将上面的“dbo”更改为“msg”,但也出现了一个错误:

错误描述:Microsoft.ServiceModel.Channels.Common.XmlReaderParsingException:名称为“SP_XXXX1”且命名空间为“”的起始元素意外出现。请确保您的输入XML符合操作的架构

我是否需要重新生成所有内容,再次运行向导以创建模式,等等,然后在dev环境中重新创建环境时再次进行测试


我没有这样做,因为我认为在发送端口中可以很容易地进行配置。

如果从存储过程创建架构,则架构将包含对SQL架构的引用(例如dbo)。我的建议是在所有环境中对齐SQL模式,重新生成模式并调整映射


公平地说,在SQL中,dbo SQL模式中的表“Sales”与“msg”SQL模式中的表“Sales”是不同的表。

感谢您的回答。我将重新生成所有内容并更新应用程序架构。我已经将开发机器上的模式改为MSG而不是DBO,这样我就可以进行测试了。我希望它更简单,但我想这是有道理的。正如您所指出的,SQL中不同模式中的对象是不同的。:)
<BtsActionMapping xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Operation Name="SP_XXXX1" Action="Procedure/dbo/SP_XXXX1" />
  <Operation Name="SP_XXXX2" Action="Procedure/dbo/SP_XXXX2" />
</BtsActionMapping>