2017-10-16 208 views
0

这是一个简单的发送端口,我试图在提升的属性上设置一个过滤器。每当我尝试登记此端口时,出现以下错误:尝试使用过滤器登记发送端口时,什么导致异常HRESULT:0xC0C01B22?

=================================== 

Could not update Send Port 'SendPort1' in Message Box. Exception from HRESULT: 0xC0C01B22 (Microsoft.BizTalk.ExplorerOM) 

------------------------------ 
For help, click: http://go.microsoft.com/fwlink/?LinkId=47400&ProdName=Microsoft+BizTalk+Server+2013&ProdVer=3.10.229.0&EvtSrc=Microsoft.BizTalk.ExplorerOM.Resources&EvtID=IDS_ERR_SENDPORT_UPDATE 

------------------------------ 
Program Location: 

at Microsoft.BizTalk.ExplorerOM.BtsCatalogExplorer.SaveChangesWithTransaction(Object transactionObj) 
at Microsoft.BizTalk.ExplorerOM.BtsCatalogExplorer.SaveChanges() 
at Microsoft.BizTalk.Administration.SnapIn.Forms.Common.ExplorerPropertyPagesContainer.CommitChanges() 
at Microsoft.BizTalk.SnapIn.Framework.Forms.PropertyPagesContainer.Store() 
at Microsoft.BizTalk.SnapIn.Framework.Forms.SheetFramework.Store() 

过滤器仅检查传入消息中是否存在提升属性。关于这个例外,只有one post in MSDN forums:HRESULT 0xC0C01B22

任何想法是什么造成这种情况?

回答

2

答案在此页:https://docs.microsoft.com/en-us/biztalk/core/promoting-properties

该说明有说以下内容:

XSD数据base64Binary的,持续时间,entites的,hexBinary类型,IDREFS,长,NMTOKENS和unsignedLong类型不支持晋升。

原来,在我们的案例中,升级的属性是xs:long类型。我将元素类型更改为xs:string,然后问题中的问题就消失了。

如果它们在开始时是不支持的类型,那么阻止这些元素的提升是有意义的。但是在推广阶段,我们不会看到有关此类元素的任何提醒。

希望这可以帮助别人。

相关问题