代码之家  ›  专栏  ›  技术社区  ›  aceinthehole

在映射期间自动截断为MaxLength

  •  1
  • aceinthehole  · 技术社区  · 16 年前

    我有一个模式,它的所有元素都设置了max-length属性,大小不一。我映射到它,并期望最大长度将经常超过。

    有没有一种方法可以告诉BizTalk自动截断,而不必为每个元素手动配置functoid?

    “最大长度”属性是否有验证以外的用途?

    1 回复  |  直到 16 年前
        1
  •  2
  •   David Hall    16 年前

    在BizTalk映射器中没有任何功能可以执行您想要的操作—您当然可以编写某种前置或后置处理器来执行此操作,但我建议您走错了路。

    这将需要更多的工作,但我建议调查为什么源系统和目标系统有如此不同的模式。这可能是一个警告信号,您希望截断这么多字段以便能够传递信息。

    值得你花时间去锻炼:

    • 这些maxLength元素都是严格必要的吗?
    • 截断任何字段是否会导致技术或业务用户的问题?
    • 这些领域中的一些应该被拆分吗?也许一个系统定义一个100字符的地址字段,而另一个系统有一个街道和一个城镇字段。

    W3C XML Schema definition :

    maxLength·提供:

    最多具有特定数字的值 长度单位,其中 长度因{基类型而异 定义}。

    我更喜欢他们用的词 约束 言过其实

    推荐文章