2016-03-01 75 views
0

对于下面的XML,如何在脚本functoid中使用内联C#来获取元素='SAON'的类型值? 有关信息,这是来自我的源模式中的记录,该记录包含编码的XML,我首先将其转换为XML文档。用于BizTalk脚本Functoid的In-line C#

<?xml version="1.0"?> 
<LocationXML> 
     <Location> 
     <Element>PAON</Element> 
     <type>a</type> 
     </Location> 
     <Location> 
     <Element>SAON</Element> 
     <type>b</type> 
     </Location> 
</LocationXML> 

在-C线#:这来自于一个应用程序,我以前建成,在地图上不被测试至今,但我怀疑这是不是一个百万英里的路程。

string s = NewValueXml; 

XmlDocument x = new XmlDocument(); 
x.LoadXml("<root>" + s + "</root>"); 
return x.InnerText; 
+0

你可以请发布内嵌的C#是转换/返回XML文档?谢谢。 – 40Alpha

+0

original post upated – DarkW1nter

+0

是否可以有等于SAON的位置的多个实例或只有一个实例? – 40Alpha

回答

1

好吧,在你使用的string转换为xmldocument脚本functoid,我会做到这一点,并返回一个string然后将其映射到目标节点。希望我这次能够理解你的问题...

public string XMLConvertAndReturnType(string param1) 
{ 
    string returnType = ""; //or String.Empty 
    XmlDocument x = new XmlDocument(); 
    x.LoadXml("<root>" + param1 + "</root>"); 
    returnType = x.SelectSingleNode("//Location[Element = 'SAON']/type/text()").Value.ToString(); 
    return returnType; 
} 
+0

感谢您的回复。我得到你在说什么,但是我将要编码的XML通过脚本functoid变成了XmlDocument,所以这个脚本functoid吐出了一个xml消息供我处理,所以我无法真正将这些元素映射为参数。 – DarkW1nter

+0

好的,更新了我的答案。 – 40Alpha

+0

效果很好,谢谢你的时间 – DarkW1nter

相关问题