我如何开发喜欢值映射的自定义functoid,在某些情况下不会返回值并且不会创建映射字段?
答案 0 :(得分:2)
简答:你不能。
更多:自定义Functoid将始终返回一个值,因为.Net方法(至少在Functoid API的范围内)将始终返回一个值,即使该值为Null。
您唯一的选择是在自定义Functoid之后使用链接到目标节点的Logical Functoid测试返回值。这具有创建目标节点的副作用,只有Logical Functoid返回true。
答案 1 :(得分:0)
为什么要为此开发自定义functoid?您可以使用xslt来测试输入值。如果该值不满足某些要求,请不要创建输出xml元素。以下面的示例为例,当人员不存在该名称时(在源xml,地图上),应创建no xml元素人员(在目标xml上,地图上)
<xsl:if test="person/name">
<be:person>
<xsl:value-of select="person/name/text()" />
</be:person>
尝试将xslt用于地图,而不是functoid。