如何将XML节点转换为VB.NET [英] How to XML node to VB.NET

查看:85
本文介绍了如何将XML节点转换为VB.NET的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,所以我有这个xml和我想在数据网格中加载的某些数据



这是xml

< pre lang =xml> <? xml version = 1.0 >

- < ROOT >


- < EnqCC_ENQ_COUNTS >


- < ROW num = 1 >

< ADDR > 5 < / ADDR >

< ADMORDS > 0 < / ADMORDS >

< COLLECTIONS > 0 < / COLLECTIONS >

< DMATCHES > 1 < / DMATCHES >

< JUDGE > 0 < / JUDGE >

< 通知 > 0 < / NOTICES >

< 贷款 > ; 1 < / LOANS >

< PMATCHES > 0 < / PMATCHES >

< PREV_ENQ > 5 < / PREV_ENQ >

< TPHONE > 1 < / TPHONE >

< 雇主 > 5 < /雇主 >

< FRAUDALERT > 0 < / FRAUDALERT >

< CPACC > 0 < / CPACC >

< NLRACC > 0 < < span class =code-leadattribute> / NLRACC >

< ; PUB_DEF > 0 < / PUB_DEF >

< CS_ADVERSE > 0 < / CS_ADVERSE >

< / ROW >

< / EnqCC_ENQ_COUNTS >


- < EnqCC_ADDRESS >


- < ROW num = 1 >

< ADDRESS_TYPE > P < / ADDRESS_TYPE >

< LINE_1 > 邮箱1258 < / LINE_1 >

< LINE_2 > PIET RETIEF < / LINE_2 >

< LINE_3 / >

< LINE_4 / >

< POSTAL_CODE > 2380 < / POSTAL_CODE >

< DATE_CREATED > 27/05/2016 < / DATE_CREATED >

< ADDR_DATE_CREATED > 17/10/2011 < / ADDR_DATE_CREATED >

< / ROW >


- < ROW num = 2 >

< ADDRESS_TYPE > R < / ADDRESS_TYPE >

< LINE_1 > 1810 DONA ROAD < / LINE_1 >

< LINE_2 / >

< LINE_3 / >

< LINE_4 > EVATON < / LINE_4 >

< POSTAL_CODE > 1984 < / POSTAL_CODE >

< DATE_CREATED > 27/05 / 2016 < / DATE_CREATED >

< ADDR_DATE_CREATED > 30/09/2011 < / ADDR_DATE_CREATED >

< / ROW >


- < ROW num = 3 >

< ADDRESS_TYPE > ; P < / ADDRESS_TYPE >

< LINE_1 > NNA ROAD < / LINE_1 >

< LINE_2 > EVATON WE < / LINE_2 >

< LINE_3 > S UIT 4 MAFATSANA < / LINE_3 >

< LINE_4 > 001980220 < / LINE_4 >

< POSTAL_CODE
> 91208 < / POSTAL_CODE >

< DATE_CREATED > 27/05/2016 < ; / DATE_CREATED >

< ADDR_DATE_CREATED > 31/08/2011 < / ADDR_DATE_CREATED >

< / ROW >


- < ROW num = 4 >

< ADDRESS_TYPE > P < / ADDRESS_TYPE >

< LINE_1 > 1810 8 DONA ROAD < / LINE_1 >

< LINE_2 / >

< LINE_3 / >

< LINE_4 > EVATON < / LINE_4 >

< POSTAL_CODE > 1984 < / POSTAL_CODE >

< DATE_CREATED > 27/05/2016 < / DATE_CREATED >

< < span class =code-leadattribute> ADDR_DATE_CREATED > 30/09/2011 < / ADDR_DATE_CREATED >

< / ROW >


- < ROW num = 5 >

< ADDRESS_TYPE > R < / ADDRESS_TYPE >

< LINE_1 / >

< <跨度class =code-leadattribute> LINE_2 > EVATON < / LINE_2 >

< LINE_3 / >

< LINE_4 / >

< POSTAL_CODE > 1984 < / POSTAL_CODE >

< DATE_CREATED > 27 / 05/2016 < / DATE_CREATED >

< ADDR_DATE_CREATED > 30/09/2011 < / ADDR_DATE_CREATED >

< / ROW >

< / EnqCC_ADDRESS >


- < EnqCC_BRANCHES >


- < ROW num = 1 >

< CLIENT_NUMBER > 1806091196847035 < / CLIENT_NUMBER < span class =code-keyword>>

< NUMBER_LOANS > 1 < / NUMBER_LOANS >

< BRANCH_NAME > Capitec - Piet Retief < / BRANCH_NAME >

< CONTACT_PERSON > 经理< / CONTACT_PERSON >

< TELEPHONE_NUMBER > TBA < / TELEPHONE_NUMBER >

< 状态 > 当前贷款< / STATUS >

< BRA_COMMENT / >

< CLIENT_STATUS > 1 < / CLIENT_STATUS >

< / ROW >

< / EnqCC_BRANCHES > ;

< EnqCC_HP / >


- < EnqCC_LOANS >


- < ROW num = 1 >

&l t; DATE_DUE > 2009/07/31 < / DATE_DUE >

< DATE_ISSUED > 2009/06/18 00:00 < / DATE_ISSUED >

< INSTALL_AMT > 2636 < / INSTALL_AMT > ;

< REF_NO > 1806091196847035 < / REF_NO >

< < span class =code-leadattribute> TOT_AMT_REPAYABLE > 25000 < / TOT_AMT_REPAYABLE >

< BRANCH_NAME > Capitec - Piet Retief < / BRANCH_NAME >

< CONTACT_PERSON > 经理< / CONTACT_PERSON >

< span class =code-keyword>< TELE PHONE_NUMBER > TBA < / TELEPHONE_NUMBER >

< 状态 > 打开< / STATUS >

< / ROW >

< / EnqCC_LOANS >


- < span class =code-keyword>< EnqCC_DMATCHES >


- < ROW num = 1 >

< ID_NUMBER > 8001060716081 < / ID_NUMBER >

< COUNTRY_CODE > 南非< / COUNTRY_CODE >

< NAME > MARIA < / NAME >

< SURNAME > SEJAKE < / SURNAME >

< 状态 > 已验证< / STATUS >

< DECEASED_DATE / >

< / ROW >

< / EnqCC_DMATCHES >


- < EnqCC_PREVENQ >


- < ROW num = 1 >

< ENQUIRY_DATE > 26-05-2016 10:05 < / ENQUIRY_DATE >

< BRANCH_NAME > 消费者金融服务 - Wynberg < / BRANCH_NAME >

< CONTACT_PERSON > Widad Edwards < / CONTACT_PERSON >

< TELEPHONE_NUMBER > (021)761 3658 < / TELEPHONE_NUMBER >

< / ROW >


- < ROW num = 2 < span class =code-keyword>>

< ENQUIRY_DATE > 25-05-2016 11:36 < / ENQUIRY_DATE >

< BRANCH_NAME > 消费者金融服务 - Wynberg < / BRANCH_NAME >

< CONTACT_PERSON > Widad Edwards < / CONTACT_PERSON >

< TELEPHONE_NUMBER > (021)761 3658 < / TELEPHONE_NUMBER >

< / ROW >


- < ROW num = 3 >

< ENQUIRY_DATE > 18-06-2009 16:00 < / ENQUIRY_DATE >

< BRANCH_NAME > Capitec - Piet Retief < ; / BRANCH_NAME >

< CONTACT_PERSON > Manager < / CONTACT_PERSON >

< TELEPHONE_NUMBER > TBA < / TELEPHONE_NUMBER >

</ROW>


-<ROW num=\"4\">

<ENQUIRY_DATE>30-03-2009 13:37</ENQUIRY_DATE>

<BRANCH_NAME>Capitec - Vereeniging Voortrekker</BRANCH_NAME>

<CONTACT_PERSON>The Manager</CONTACT_PERSON>

<< span class=\"code-leadattribute\">TELEPHONE_NUMBER>(016) 422 3905</TELEPHONE_NUMBER>

</ROW>


-<ROW num=\"5\">

<ENQUIRY_DATE>20-10-2008 11:29</ENQUIRY_DATE>

<BRANCH_NAME>Capitec - Piet Retief</BRANCH_NAME>

<CONTACT_PERSON>The Manager</CONTACT_PERSON>

<TELEPHONE_NUMBER>TBA</TELEPHONE_NUMBER>

</ROW>

</EnqCC_PREVENQ>


-<EnqCC_TELEPHONE>


-<ROW num=\"1\">

<TEL_NUMBER_TYPE>W</TEL_NUMBER_TYPE>

<TEL_NUMBER>0178015000< /TEL_NUMBER>

<DATE_CREATED>27-05-2016</DATE_CREATED>

<TEL_DATE_CREATED>10-11-2015</TEL_DATE_CREATED>

</ROW>

</EnqCC_TELEPHONE>


-<EnqCC_SRCHCR ITERIA>


-<ROW num=\"1\">

<CRIT_IDNUMBER>8001060716081</CRIT_IDNUMBER>

<CRIT_NAME>X </CRIT_NAME>

<CRIT_SURNAME>X</CRIT_SURNAME>

<ENQ_CNT_NAME>South Africa</ENQ_CNT_NAME>

<ENQ_DATE>2016-05-27 09:17:42</ENQ_DATE>

<DOB>1980-01-06</DOB>

<GENDER>MALE</GENDER>

<PASSPORT_FLAG>NO</PASSPORT_FLAG>

<ADDRESS>X X 1234</ADDRESS>

<LOAN_AMOUNT/>

<NET_INCOME/>

<ENQUIRY_PURPOSE>Debt Review</ENQUIRY_PURPOSE>

<HOMETEL> </HOMETEL>

<WORK_TEL> </WORK_TEL>

<CRIT_CELL_NUM/> ;

</ROW>

</EnqCC_SRCHCRITERIA>


-<EnqCC_EMPLOYER>


-<ROW num=\"1\">

<EMP_NAME>SIPHOKUHLE SECONDARY</EMP_NAME>

<EMP_DATE>2011-09-30</EMP_DATE>

<OCCUPATION>STUDENT</OCCUPATION>

<EMP_TYPE> </EMP_TYPE>

<SALARY_FREQ> </SALARY_FREQ>

<PAYSLIP_REF> </PAYSLIP_REF>

<EMPLOYEE_NO> </EMPLOYEE_NO>

<DATE_CREATED>2016-05-27</DATE_CREATED>

</ROW>


-<ROW num=\"2\">

<EMP_NAME>B9 MPUMALANGA EDUCATION</EMP_NAME>

<EMP_DATE>2011-09-30</EMP_DATE>

<OCCUPATION>
</OCCUPATION>

<EMP_TYPE> </EMP_TYPE>

<SALARY_FREQ> </SALARY_FREQ>

<PAYSLIP_REF> </PAYSLIP_REF>

<EMPLOYEE_NO> </EMPLOYEE_NO>

<DATE_CREATED>2016-05-27</DATE_CREATED>

</ROW>


-<ROW num=\"3\">

<EMP_NAME>00002200000000000M</EMP_NAME>

<EMP_DATE>2011-08-31</EMP_DATE>

<OCCUPATION> </OCCUPATION>

<EMP_TYPE> </EMP_TYPE>

<SALARY_FREQ> </SALARY_FREQ>

<PAYSLIP_REF> </PAYSLIP_REF>

<EMPLOYEE_NO> </EMPLOYEE_NO>

<DATE_CREATED>2016-05-27</DAT E_CREATED>

</ROW>


-<ROW num=\"4\">

<EMP_NAME>SIPHOKUHLE SECONDARY</EMP_NAME>

<EMP_DATE>2011-03-31</EMP_DATE>

<OCCUPATION> </OCCUPATION>

<EMP_TYPE> </EMP_TYPE>

<SALARY_FREQ> </SALARY_FREQ>

<PAYSLIP_REF> </PAYSLIP_REF>

<EMPLOYEE_NO> </EMPLOYEE_NO>

<DATE_CREATED>2016-05-27</DATE_CREATED>

</ROW>


-<ROW num=\"5\">

<EMP_NAME>NUC32</EMP_NAME>

<EMP_DATE>2010-03-31</EMP_DATE>

<OCCUPATION> </OCCUPATION>

<EMP_TYPE> </EMP_TYPE>

<SALARY_FREQ> </SALARY_FREQ>

<PAYSLIP_REF> </PAYSLIP_REF>

<EMPLOYEE_NO> </EMPLOYEE_NO>

<DATE_CREATED>2016-05-27</DATE_CREATED>

</ROW>

</EnqCC_EMPLOYER>


-<EnqCC_ACTIVITIES>


-<ROW num=\"1\">

<ENQU IRIES>2</ENQUIRIES>

<LOANS>0</LOANS>

<JUDGEMENTS>0</JUDGEMENTS>

<NOTICES>0</NOTICES>

&l t;COLLECTIONS>0</COLLECTIONS>

<ADMINORDERS>0</ADMINORDERS>

<BALANCE>25000</BALANCE>

<INSTALLMENT>2636</INSTALLMENT>

</ROW>

</EnqCC_ACTIVITIES>


-<EnqCC_STATS>


-<ROW num=\"1\">

<CC_JUDGE_12_CNT>0</CC_JUDGE_12_CNT>

<CC_JUDGE_24_CNT>0</CC_JUDGE_24_CNT>

<CC_JUDGE_36_CNT>0</CC_JUDGE_36_CNT>

<CC_NOTICE_12_CNT>0</CC_NOTICE_12_CNT>

<CC_NOTICE_24_CNT>0</CC_NOTICE_24_CNT>

<CC_NOTICE_36_CNT>0</CC_NOTICE_36_CNT>

<CC_ADVERSE_12_CNT>0</CC_ADVERSE_12_CNT>

<CC_ADVERSE_24_CNT>0</CC_ADVERSE_24_CNT>

<CC_ADVERSE_36_CNT>0</CC_ADVERSE_36_CNT>

<CC_EVO_ADVERSE_12_CNT>0</CC_EVO_ADVERSE_12_CNT>

<CC_EVO_ADVERSE_24_CNT>0</CC_EVO_ADVERSE_24_CNT>

<CC_EVO_ADVERSE_36_CNT>0</CC_EVO_ADVERSE_36_CNT>

<CC_ADVERSE_TOT>0</CC_ADVERSE_TOT>

</ROW>

</EnqCC_STATS>


-<EnqCC_NLR_SUMMARY>


-<Summary>


-<NLR_Past_12_Months>

<Enquiries_by_client>3</Enquiries_by_client>

<Enquiries_by_other>0</Enquiries_by_other>

<Positive_loans>0</Positive_loans>

<Highest_months_in_arrears>0</Highest_months_in_arrears>

</NLR_Past_12_Months>


-<NLR_Past_24_Months>

<Enquiries_by_client>3</Enquiries_by_client>

<Enquiries_by_other>0</Enquiries_by_other>

<Positive_loans>0</Positive_loans>

<Highest_months_in_arrears>0</Highest_months_in_arrears>

</NLR_Past_24_Months>


-<NLR_Past_36_Months>

<Enquiries_by_client>3</Enquiries_by_client>

<Enquiries_by_other>0</Enquiries_by_other>

<Positive_loans>0</Positive_loans>

<Highest_months_in_arrears>0</Highest_months_in_arrears>

</NLR_Past_36_Months>

<NLR_WorstMonthsArrears>0</NLR_WorstMonthsArrears>

<NLR_ActiveAccounts>0</NLR_ActiveAccounts>

<NLR_BalanceExposure>0 </NLR_BalanceExposure>

<NLR_MonthlyInstallment>0</NLR_MonthlyInstallment>

<NLR_CumulativeArrears>0</NLR_CumulativeArrears>

<NLR_ClosedAccounts>0</NLR_ClosedAccounts>


-<CCA_Past_12_Months>

<Enquiries_by_client>3</Enquiries_by_client>

<Enquiries_by_other>0</Enquiries_by_other>

<Positive_loans>0</Positive_loans>

<Highest_months_in_arrears>0</Highest_months_in_arrears>

</CCA_Past_12_Months>


-<CCA_Past_24_Months>

<Enquiries_by_client>3</Enquiries_by_client>

<Enquiries_by_other>0</Enquiries_by_other>

<Positive_loans>0</Positive_loans>

<Highest_months_in_arrears>0</Highest_months_in_arrears>

</CCA_Past_24_Months>


-<CCA_Past_36_Months>

<Enquiries_by_client>3</Enquiries_by_client>

<Enquiries_by_other>0</Enquiries_by_other>

<Positive_loans>0</Positive_loans>

<Highest_months_in_arrears>0</Highest_months_in_arrears>

</CCA_Past_36_Months>

<CCA_WorstMonthsArrears>0</CCA_WorstMonthsArrears>

<CCA_ActiveAccounts>0</CCA_ActiveAccounts>

<CCA_BalanceExposure>0<
/CCA_BalanceExposure>

<CCA_MonthlyInstallment>0</CCA_MonthlyInstallment>

<CCA_CumulativeArrears>0</CCA_CumulativeArrears>

<CCA_ClosedAccounts>0</CCA_ClosedAccounts>

<AdverseAccounts>0</AdverseAccounts>

<RevolvingAccounts>0</RevolvingAccounts>

<InstalmentAccounts>0</InstalmentAccounts>

<OpenAccounts>0& lt;/OpenAccounts>

<HighestJudgement>0</HighestJudgement>

</Summary>

</EnqCC_NLR_SUMMARY>

<Enquiry_ID>58196342</Enquiry_ID>


</ROOT>





How would i go about getting only the node <enqcc_loans> into a datagridview



What I have tried:



Dim nodeDataset As New DataSet

Dim filepath As String = \"C:\test\Enq_8001060716081_58196342.xml\"

nodeDataset.ReadXml(filepath)

DataGridView1.DataSource = nodeDataset

DataGridView1.DataMember = \"EnqCC_LOANS\"

解决方案

If you debug your code and place these lines after reading the file

For Each xxx As System.Data.DataTable In nodeDataset.Tables 
Console.WriteLine(\"{0} : {1}\", xxx.ToString(), xxx.Rows.Count)
Next



You should get the following output

ROOT : 1 
EnqCC_ENQ_COUNTS : 1
ROW : 24
EnqCC_ADDRESS : 1
EnqCC_BRANCHES : 1
EnqCC_LOANS : 1
EnqCC_DMATCHES : 1
EnqCC_PREVENQ : 1
EnqCC_TELEPHONE : 1
EnqCC_SRCHCRITERIA : 1
EnqCC_EMPLOYER : 1
EnqCC_ACTIVITIES : 1
EnqCC_STATS : 1
EnqCC_NLR_SUMMARY : 1
Summary : 1
NLR_Past_12_Months : 1
NLR_Past_24_Months : 1
NLR_Past_36_Months : 1
CCA_Past_12_Months : 1
CCA_Past_24_Months : 1
CCA_Past_36_Months : 1



Notice the table called ROW - this is actually the data from the EnqCC_ENQ_Counts node. Unfortunately the EnqCC_LOANS also has sub-nodes called ROW - this second table is not being loaded into the DataSet.



One way around this is to target the specific node that you require and load that into the dataset e.g.

Dim nodeDataset As New DataSet 
Dim filepath As String = \"C:\test\Enq_8001060716081_58196342.xml\"

Dim xmlDoc As XmlDocument = New XmlDocument()
xmlDoc.Load(filepath)

Dim requiredNode As XmlNode = xmlDoc.SelectSingleNode(\"ROOT/EnqCC_LOANS\")
Dim xmlRdr As XmlNodeReader = New XmlNodeReader(requiredNode)
nodeDataset.ReadXml(xmlR dr)

DataGridView1.DataSource = nodeDataset
DataGridView1.DataMember = \"ROW\"
xmlRdr.Close()


Hi Guys so i have this xml and theres certain data i want to load in a datagridview

this is the xml

<?xml version="1.0"?>

-<ROOT>


-<EnqCC_ENQ_COUNTS>


-<ROW num="1">

<ADDR>5</ADDR>

<ADMORDS>0</ADMORDS>

<COLLECTIONS>0</COLLECTIONS>

<DMATCHES>1</DMATCHES>

<JUDGE>0</JUDGE>

<NOTICES>0</NOTICES>

<LOANS>1</LOANS>

<PMATCHES>0</PMATCHES>

<PREV_ENQ>5</PREV_ENQ>

<TPHONE>1</TPHONE>

<EMPLOYERS>5</EMPLOYERS>

<FRAUDALERT>0</FRAUDALERT>

<CPACC>0</CPACC>

<NLRACC>0</NLRACC>

<PUB_DEF>0</PUB_DEF>

<CS_ADVERSE>0</CS_ADVERSE>

</ROW>

</EnqCC_ENQ_COUNTS>


-<EnqCC_ADDRESS>


-<ROW num="1">

<ADDRESS_TYPE>P</ADDRESS_TYPE>

<LINE_1>PO BOX 1258</LINE_1>

<LINE_2>PIET RETIEF</LINE_2>

<LINE_3/>

<LINE_4/>

<POSTAL_CODE>2380</POSTAL_CODE>

<DATE_CREATED>27/05/2016</DATE_CREATED>

<ADDR_DATE_CREATED>17/10/2011</ADDR_DATE_CREATED>

</ROW>


-<ROW num="2">

<ADDRESS_TYPE>R</ADDRESS_TYPE>

<LINE_1>1810 DONA ROAD</LINE_1>

<LINE_2/>

<LINE_3/>

<LINE_4>EVATON</LINE_4>

<POSTAL_CODE>1984</POSTAL_CODE>

<DATE_CREATED>27/05/2016</DATE_CREATED>

<ADDR_DATE_CREATED>30/09/2011</ADDR_DATE_CREATED>

</ROW>


-<ROW num="3">

<ADDRESS_TYPE>P</ADDRESS_TYPE>

<LINE_1>NNA ROAD</LINE_1>

<LINE_2>EVATON WE</LINE_2>

<LINE_3>S UIT 4 MAFATSANA</LINE_3>

<LINE_4>001980220</LINE_4>

<POSTAL_CODE>91208</POSTAL_CODE>

<DATE_CREATED>27/05/2016</DATE_CREATED>

<ADDR_DATE_CREATED>31/08/2011</ADDR_DATE_CREATED>

</ROW>


-<ROW num="4">

<ADDRESS_TYPE>P</ADDRESS_TYPE>

<LINE_1>1810 8 DONA ROAD</LINE_1>

<LINE_2/>

<LINE_3/>

<LINE_4>EVATON</LINE_4>

<POSTAL_CODE>1984</POSTAL_CODE>

<DATE_CREATED>27/05/2016</DATE_CREATED>

<ADDR_DATE_CREATED>30/09/2011</ADDR_DATE_CREATED>

</ROW>


-<ROW num="5">

<ADDRESS_TYPE>R</ADDRESS_TYPE>

<LINE_1/>

<LINE_2>EVATON</LINE_2>

<LINE_3/>

<LINE_4/>

<POSTAL_CODE>1984</POSTAL_CODE>

<DATE_CREATED>27/05/2016</DATE_CREATED>

<ADDR_DATE_CREATED>30/09/2011</ADDR_DATE_CREATED>

</ROW>

</EnqCC_ADDRESS>


-<EnqCC_BRANCHES>


-<ROW num="1">

<CLIENT_NUMBER>1806091196847035</CLIENT_NUMBER>

<NUMBER_LOANS>1</NUMBER_LOANS>

<BRANCH_NAME>Capitec - Piet Retief</BRANCH_NAME>

<CONTACT_PERSON>The Manager</CONTACT_PERSON>

<TELEPHONE_NUMBER>TBA</TELEPHONE_NUMBER>

<STATUS>Current Loan</STATUS>

<BRA_COMMENT/>

<CLIENT_STATUS>1</CLIENT_STATUS>

</ROW>

</EnqCC_BRANCHES>

<EnqCC_HP/>


-<EnqCC_LOANS>


-<ROW num="1">

<DATE_DUE>2009/07/31</DATE_DUE>

<DATE_ISSUED>2009/06/18 00:00</DATE_ISSUED>

<INSTALL_AMT>2636</INSTALL_AMT>

<REF_NO>1806091196847035</REF_NO>

<TOT_AMT_REPAYABLE>25000</TOT_AMT_REPAYABLE>

<BRANCH_NAME>Capitec - Piet Retief</BRANCH_NAME>

<CONTACT_PERSON>The Manager</CONTACT_PERSON>

<TELEPHONE_NUMBER>TBA</TELEPHONE_NUMBER>

<STATUS>Open</STATUS>

</ROW>

</EnqCC_LOANS>


-<EnqCC_DMATCHES>


-<ROW num="1">

<ID_NUMBER>8001060716081</ID_NUMBER>

<COUNTRY_CODE>South Africa</COUNTRY_CODE>

<NAME>MARIA</NAME>

<SURNAME>SEJAKE</SURNAME>

<STATUS>Verified</STATUS>

<DECEASED_DATE/>

</ROW>

</EnqCC_DMATCHES>


-<EnqCC_PREVENQ>


-<ROW num="1">

<ENQUIRY_DATE>26-05-2016 10:05</ENQUIRY_DATE>

<BRANCH_NAME>Consumer Financial Services - Wynberg</BRANCH_NAME>

<CONTACT_PERSON>Widad Edwards</CONTACT_PERSON>

<TELEPHONE_NUMBER>(021) 761 3658</TELEPHONE_NUMBER>

</ROW>


-<ROW num="2">

<ENQUIRY_DATE>25-05-2016 11:36</ENQUIRY_DATE>

<BRANCH_NAME>Consumer Financial Services - Wynberg</BRANCH_NAME>

<CONTACT_PERSON>Widad Edwards</CONTACT_PERSON>

<TELEPHONE_NUMBER>(021) 761 3658</TELEPHONE_NUMBER>

</ROW>


-<ROW num="3">

<ENQUIRY_DATE>18-06-2009 16:00</ENQUIRY_DATE>

<BRANCH_NAME>Capitec - Piet Retief</BRANCH_NAME>

<CONTACT_PERSON>The Manager</CONTACT_PERSON>

<TELEPHONE_NUMBER>TBA</TELEPHONE_NUMBER>

</ROW>


-<ROW num="4">

<ENQUIRY_DATE>30-03-2009 13:37</ENQUIRY_DATE>

<BRANCH_NAME>Capitec - Vereeniging Voortrekker</BRANCH_NAME>

<CONTACT_PERSON>The Manager</CONTACT_PERSON>

<TELEPHONE_NUMBER>(016) 422 3905</TELEPHONE_NUMBER>

</ROW>


-<ROW num="5">

<ENQUIRY_DATE>20-10-2008 11:29</ENQUIRY_DATE>

<BRANCH_NAME>Capitec - Piet Retief</BRANCH_NAME>

<CONTACT_PERSON>The Manager</CONTACT_PERSON>

<TELEPHONE_NUMBER>TBA</TELEPHONE_NUMBER>

</ROW>

</EnqCC_PREVENQ>


-<EnqCC_TELEPHONE>


-<ROW num="1">

<TEL_NUMBER_TYPE>W</TEL_NUMBER_TYPE>

<TEL_NUMBER>0178015000</TEL_NUMBER>

<DATE_CREATED>27-05-2016</DATE_CREATED>

<TEL_DATE_CREATED>10-11-2015</TEL_DATE_CREATED>

</ROW>

</EnqCC_TELEPHONE>


-<EnqCC_SRCHCRITERIA>


-<ROW num="1">

<CRIT_IDNUMBER>8001060716081</CRIT_IDNUMBER>

<CRIT_NAME>X </CRIT_NAME>

<CRIT_SURNAME>X</CRIT_SURNAME>

<ENQ_CNT_NAME>South Africa</ENQ_CNT_NAME>

<ENQ_DATE>2016-05-27 09:17:42</ENQ_DATE>

<DOB>1980-01-06</DOB>

<GENDER>MALE</GENDER>

<PASSPORT_FLAG>NO</PASSPORT_FLAG>

<ADDRESS>X X 1234</ADDRESS>

<LOAN_AMOUNT/>

<NET_INCOME/>

<ENQUIRY_PURPOSE>Debt Review</ENQUIRY_PURPOSE>

<HOMETEL> </HOMETEL>

<WORK_TEL> </WORK_TEL>

<CRIT_CELL_NUM/>

</ROW>

</EnqCC_SRCHCRITERIA>


-<EnqCC_EMPLOYER>


-<ROW num="1">

<EMP_NAME>SIPHOKUHLE SECONDARY</EMP_NAME>

<EMP_DATE>2011-09-30</EMP_DATE>

<OCCUPATION>STUDENT</OCCUPATION>

<EMP_TYPE> </EMP_TYPE>

<SALARY_FREQ> </SALARY_FREQ>

<PAYSLIP_REF> </PAYSLIP_REF>

<EMPLOYEE_NO> </EMPLOYEE_NO>

<DATE_CREATED>2016-05-27</DATE_CREATED>

</ROW>


-<ROW num="2">

<EMP_NAME>B9 MPUMALANGA EDUCATION</EMP_NAME>

<EMP_DATE>2011-09-30</EMP_DATE>

<OCCUPATION> </OCCUPATION>

<EMP_TYPE> </EMP_TYPE>

<SALARY_FREQ> </SALARY_FREQ>

<PAYSLIP_REF> </PAYSLIP_REF>

<EMPLOYEE_NO> </EMPLOYEE_NO>

<DATE_CREATED>2016-05-27</DATE_CREATED>

</ROW>


-<ROW num="3">

<EMP_NAME>00002200000000000M</EMP_NAME>

<EMP_DATE>2011-08-31</EMP_DATE>

<OCCUPATION> </OCCUPATION>

<EMP_TYPE> </EMP_TYPE>

<SALARY_FREQ> </SALARY_FREQ>

<PAYSLIP_REF> </PAYSLIP_REF>

<EMPLOYEE_NO> </EMPLOYEE_NO>

<DATE_CREATED>2016-05-27</DATE_CREATED>

</ROW>


-<ROW num="4">

<EMP_NAME>SIPHOKUHLE SECONDARY</EMP_NAME>

<EMP_DATE>2011-03-31</EMP_DATE>

<OCCUPATION> </OCCUPATION>

<EMP_TYPE> </EMP_TYPE>

<SALARY_FREQ> </SALARY_FREQ>

<PAYSLIP_REF> </PAYSLIP_REF>

<EMPLOYEE_NO> </EMPLOYEE_NO>

<DATE_CREATED>2016-05-27</DATE_CREATED>

</ROW>


-<ROW num="5">

<EMP_NAME>NUC32</EMP_NAME>

<EMP_DATE>2010-03-31</EMP_DATE>

<OCCUPATION> </OCCUPATION>

<EMP_TYPE> </EMP_TYPE>

<SALARY_FREQ> </SALARY_FREQ>

<PAYSLIP_REF> </PAYSLIP_REF>

<EMPLOYEE_NO> </EMPLOYEE_NO>

<DATE_CREATED>2016-05-27</DATE_CREATED>

</ROW>

</EnqCC_EMPLOYER>


-<EnqCC_ACTIVITIES>


-<ROW num="1">

<ENQUIRIES>2</ENQUIRIES>

<LOANS>0</LOANS>

<JUDGEMENTS>0</JUDGEMENTS>

<NOTICES>0</NOTICES>

<COLLECTIONS>0</COLLECTIONS>

<ADMINORDERS>0</ADMINORDERS>

<BALANCE>25000</BALANCE>

<INSTALLMENT>2636</INSTALLMENT>

</ROW>

</EnqCC_ACTIVITIES>


-<EnqCC_STATS>


-<ROW num="1">

<CC_JUDGE_12_CNT>0</CC_JUDGE_12_CNT>

<CC_JUDGE_24_CNT>0</CC_JUDGE_24_CNT>

<CC_JUDGE_36_CNT>0</CC_JUDGE_36_CNT>

<CC_NOTICE_12_CNT>0</CC_NOTICE_12_CNT>

<CC_NOTICE_24_CNT>0</CC_NOTICE_24_CNT>

<CC_NOTICE_36_CNT>0</CC_NOTICE_36_CNT>

<CC_ADVERSE_12_CNT>0</CC_ADVERSE_12_CNT>

<CC_ADVERSE_24_CNT>0</CC_ADVERSE_24_CNT>

<CC_ADVERSE_36_CNT>0</CC_ADVERSE_36_CNT>

<CC_EVO_ADVERSE_12_CNT>0</CC_EVO_ADVERSE_12_CNT>

<CC_EVO_ADVERSE_24_CNT>0</CC_EVO_ADVERSE_24_CNT>

<CC_EVO_ADVERSE_36_CNT>0</CC_EVO_ADVERSE_36_CNT>

<CC_ADVERSE_TOT>0</CC_ADVERSE_TOT>

</ROW>

</EnqCC_STATS>


-<EnqCC_NLR_SUMMARY>


-<Summary>


-<NLR_Past_12_Months>

<Enquiries_by_client>3</Enquiries_by_client>

<Enquiries_by_other>0</Enquiries_by_other>

<Positive_loans>0</Positive_loans>

<Highest_months_in_arrears>0</Highest_months_in_arrears>

</NLR_Past_12_Months>


-<NLR_Past_24_Months>

<Enquiries_by_client>3</Enquiries_by_client>

<Enquiries_by_other>0</Enquiries_by_other>

<Positive_loans>0</Positive_loans>

<Highest_months_in_arrears>0</Highest_months_in_arrears>

</NLR_Past_24_Months>


-<NLR_Past_36_Months>

<Enquiries_by_client>3</Enquiries_by_client>

<Enquiries_by_other>0</Enquiries_by_other>

<Positive_loans>0</Positive_loans>

<Highest_months_in_arrears>0</Highest_months_in_arrears>

</NLR_Past_36_Months>

<NLR_WorstMonthsArrears>0</NLR_WorstMonthsArrears>

<NLR_ActiveAccounts>0</NLR_ActiveAccounts>

<NLR_BalanceExposure>0</NLR_BalanceExposure>

<NLR_MonthlyInstallment>0</NLR_MonthlyInstallment>

<NLR_CumulativeArrears>0</NLR_CumulativeArrears>

<NLR_ClosedAccounts>0</NLR_ClosedAccounts>


-<CCA_Past_12_Months>

<Enquiries_by_client>3</Enquiries_by_client>

<Enquiries_by_other>0</Enquiries_by_other>

<Positive_loans>0</Positive_loans>

<Highest_months_in_arrears>0</Highest_months_in_arrears>

</CCA_Past_12_Months>


-<CCA_Past_24_Months>

<Enquiries_by_client>3</Enquiries_by_client>

<Enquiries_by_other>0</Enquiries_by_other>

<Positive_loans>0</Positive_loans>

<Highest_months_in_arrears>0</Highest_months_in_arrears>

</CCA_Past_24_Months>


-<CCA_Past_36_Months>

<Enquiries_by_client>3</Enquiries_by_client>

<Enquiries_by_other>0</Enquiries_by_other>

<Positive_loans>0</Positive_loans>

<Highest_months_in_arrears>0</Highest_months_in_arrears>

</CCA_Past_36_Months>

<CCA_WorstMonthsArrears>0</CCA_WorstMonthsArrears>

<CCA_ActiveAccounts>0</CCA_ActiveAccounts>

<CCA_BalanceExposure>0</CCA_BalanceExposure>

<CCA_MonthlyInstallment>0</CCA_MonthlyInstallment>

<CCA_CumulativeArrears>0</CCA_CumulativeArrears>

<CCA_ClosedAccounts>0</CCA_ClosedAccounts>

<AdverseAccounts>0</AdverseAccounts>

<RevolvingAccounts>0</RevolvingAccounts>

<InstalmentAccounts>0</InstalmentAccounts>

<OpenAccounts>0</OpenAccounts>

<HighestJudgement>0</HighestJudgement>

</Summary>

</EnqCC_NLR_SUMMARY>

<Enquiry_ID>58196342</Enquiry_ID>


</ROOT>



How would i go about getting only the node <enqcc_loans> into a datagridview

What I have tried:

Dim nodeDataset As New DataSet
Dim filepath As String = "C:\test\Enq_8001060716081_58196342.xml"
nodeDataset.ReadXml(filepath)
DataGridView1.DataSource = nodeDataset
DataGridView1.DataMember = "EnqCC_LOANS"

解决方案

If you debug your code and place these lines after reading the file

For Each xxx As System.Data.DataTable In nodeDataset.Tables
    Console.WriteLine("{0} : {1}", xxx.ToString(), xxx.Rows.Count)
Next


You should get the following output

ROOT : 1
EnqCC_ENQ_COUNTS : 1
ROW : 24
EnqCC_ADDRESS : 1
EnqCC_BRANCHES : 1
EnqCC_LOANS : 1
EnqCC_DMATCHES : 1
EnqCC_PREVENQ : 1
EnqCC_TELEPHONE : 1
EnqCC_SRCHCRITERIA : 1
EnqCC_EMPLOYER : 1
EnqCC_ACTIVITIES : 1
EnqCC_STATS : 1
EnqCC_NLR_SUMMARY : 1
Summary : 1
NLR_Past_12_Months : 1
NLR_Past_24_Months : 1
NLR_Past_36_Months : 1
CCA_Past_12_Months : 1
CCA_Past_24_Months : 1
CCA_Past_36_Months : 1


Notice the table called ROW - this is actually the data from the EnqCC_ENQ_Counts node. Unfortunately the EnqCC_LOANS also has sub-nodes called ROW - this second table is not being loaded into the DataSet.

One way around this is to target the specific node that you require and load that into the dataset e.g.

Dim nodeDataset As New DataSet
Dim filepath As String = "C:\test\Enq_8001060716081_58196342.xml"

Dim xmlDoc As XmlDocument = New XmlDocument()
xmlDoc.Load(filepath)

Dim requiredNode As XmlNode = xmlDoc.SelectSingleNode("ROOT/EnqCC_LOANS")
Dim xmlRdr As XmlNodeReader = New XmlNodeReader(requiredNode)
nodeDataset.ReadXml(xmlRdr)

DataGridView1.DataSource = nodeDataset
DataGridView1.DataMember = "ROW"
xmlRdr.Close()


这篇关于如何将XML节点转换为VB.NET的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆