【发布时间】:2014-12-04 11:37:23
【问题描述】:
我只想从我的接收位置获取以 *.xls 或 *.xlsx 扩展名结尾的文件。 “文件掩码”应该是什么样子?
【问题讨论】:
标签: biztalk biztalk-2010
我只想从我的接收位置获取以 *.xls 或 *.xlsx 扩展名结尾的文件。 “文件掩码”应该是什么样子?
【问题讨论】:
标签: biztalk biztalk-2010
我没有亲自测试过 BizTalk 只使用前 3 个字符,但如果是这样,这可能是一个危险的解决方案,因为它可能会在未来的修补程序中得到解决。
我建议创建两个接收位置,每个过滤器一个,并将它们绑定到同一个接收端口。这也更具前瞻性,因为您可以添加任意数量的文件夹或文件类型。这基本上就是 ReceivePorts 和 -locations 背后的设计理念。
如果您正在使用编排,它们无论如何都绑定到接收端口,您无需进行任何更改即可使其正常工作。如果这是仅发送消息的场景,您只需要确保您的订阅/过滤器不是基于接收位置的名称即可。
【讨论】:
文件适配器仅使用三个字符作为扩展名,因此即使您提供 *.xlsx,它也会同时选择 *.xls 和 *.xlsx 文件。在你的情况下你不需要做任何事情,只需使用 *.xlsx 作为文件掩码
【讨论】:
这对于单个接收位置是不可能的:
每个接收位置或发送端口只能指定一个文件掩码或文件名。
参见 MSDN:Restrictions on the File Mask and File Name Properties
但是,您可以使用File Adapter SDK Sample 并构建自己的适配器以使用此blogpost 中所述的正则表达式。
【讨论】: