2016-02-02 150 views
2

所以在我的目標文件,我有一條線,看起來像這樣:XmlPeek空字符串會導致失敗

<XmlPeek Namespaces="" XmlInputPath="file.xml" Query="/data/@AttributeOne"> 
    <Output TaskParameter="Result" ItemName="my_AttributeOne" /> 
</XmlPeek> 
在 「file.xml」

,我有:

<data AttributeOne="abc" AttributeTwo="def" /> 

它還讀取其他一些屬性。

當屬性有數據,一切正常......但是當我離開AttributeOne爲空字符串(「」),XmlPeek吹大塊,出現以下錯誤:

The "XmlPeek" task's outputs could not be retrieved from the "Result" parameter. Parameter "includeEscaped" cannot have zero length.

如果我刪除屬性總的來說,它工作正常(產生的項目顯然是可理解的空白)

問題是...我怎樣才能確定,沒有吹大塊,空白屬性的值...是否通過預測試價值,或正確處理空白或其他方式。


約束:唯一要求是堅持內置的任務(XmlPeek)......我在社區工作......由於種種原因意識到XmlRead的,我想用出開箱即用的任務。

在此先感謝!

回答

0

發生此錯誤是因爲空字符串被用作項目標識符。我猜標識符不能是空字符串。如果刪除該屬性,則結果爲空,並且不會創建任何Item,因此這就是爲什麼不會引發錯誤。

也許嘗試返回結果作爲屬性而不是項目。