2013-05-10 2 views
-3

У меня есть ниже XML как:Как получить конкретное значение XML из XML с помощью C#?

<Requests xmlResponse="true"> 
<Request response="yes" responsewait="120000" sequence="1" type="Fulfillment"> 
<RequestData> 
    <PrintControl>FTP</PrintControl> 
    <User>81DF</User> 
    <Documents> 
    <AddressChangeLetter> 
     <DocumentInfo> 
     <AddressChange AddressChangeId="109346" Branch="418" LastChangeDate=""> 
      <Name>AAA NOVAK</Name> 
      <TaxID>123123121</TaxID> 
      <OldAddress1>BOX 216</OldAddress1> 
      <OldAddress2>NYANE 68017</OldAddress2> 
      <OldAddress3 /> 
      <OldAddress4 /> 
      <NewAddress1>P O BOX 216</NewAddress1> 
      <NewAddress2>CERESCO NE 68017</NewAddress2> 
      <NewAddress3 /> 
      <NewAddress4 /> 
      <DateChanged>05/08/2013</DateChanged> 
      <AccountInfo AcctNum="231232311" AcctStatusCodes="IX" /> 
     </AddressChange> 
     </DocumentInfo> 
    </AddressChangeLetter> 
    </Documents> 
</RequestData> 

Я хотел, чтобы получить имя или значение, которое находится под тегом «Документы». Поскольку в вышеприведенном XML тег под тегом «Document» является «AddressChangeLetter», поэтому я хочу получить это имя. Как я это сделаю.

+1

'Как я буду делать it.' Используя XML-парсер, как [LinqToXml] (http://msdn.microsoft.com/en-us/library/bb387061.aspx) – I4V

+1

[Что вы пробовали ?] (http://mattgemmell.com/2008/12/08/what-have-you-tried/) – Jan

+0

, пожалуйста, не просите людей делать домашнее задание .. – Shaz

ответ

0

Что-то вдоль линий ... (это не идеально, но это будет, чтобы вы начали - Google функции, которые я использовал, чтобы заставить его работать правильно):

XmlDocument xml = new XmlDocument(); 
xml.Load(yourPathGoesHere) 

XmlNodeList addressNodes = xml.GetElementsByTagName("AddressChange"); 

foreach (XmlNode oneNode in addressNodes) { 
    myVariableToGrabNames = oneNode["Name"].InnerText; 
} 
0

Это может быть сделано довольно легко использовать Linq to XML например

var xml = ...; 
var xdoc = XDocument.Parse(xml); 
foreach (var e in xdoc.Descendants("Documents").Elements()) 
{ 
    var name = e.Name; // AddressChangeLetter 
} 
Смежные вопросы