특정 자식 노드를 텍스트 상자에로드해야하지만 부모 노드 내부에 자식 노드로 구성됩니다.C# 텍스트 노드에 XML 자식 노드로드
XML 구조 다음 XMLS 내부
<nfeProc versao="3.10" xmlns="http://www.portalfiscal.inf.br/nfe">
<NFe xmlns="http://www.portalfiscal.inf.br/nfe">
<det nItem="1">
<prod>
<cProd>09</cProd>
<cEAN />
<xProd>CHAPEU DE PALHA SOBRAL</xProd>
</prod>
<imposto>
<vTotTrib>30.23</vTotTrib>
<ICMS>
<ICMSSN101>
<orig>0</orig>
<CSOSN>101</CSOSN>
<pCredSN>2.5600</pCredSN>
<vCredICMSSN>2.46</vCredICMSSN>
</ICMSSN101>
</ICMS>
</imposto>
</det>
</protNFe>
</nfeProc>
는 다양한 노드가 있습니다. 그런 다음 각각에 대해 일부 데이터를로드해야합니다. 내 코드는 지금까지 있습니다 :
XmlNodeList xndet = xml.GetElementsByTagName("det");
foreach (XmlNode xn in xndet)
{
string cProd = xn.SelectSingleNode("/prod/cProd").InnerText.ToString();
txCPROD.Text = cProd;
string vCredICMSSN = xn.SelectSingleNode("/imposto/ICMS/ICMSSN101/vCredICMSSN").InnerText.ToString();
txICMSSN.Text = vCredICMSSN;
// do other things...
}
오류는 여기서 발생합니다
"string cProd = xn.SelectSingleNode("/prod/cProd").InnerText.ToString();
내 논리는 XN 노드의 내부 문자열이 cProd 요소의 내부 텍스트를 받게 될 것이라고 말했다.
하지만이 유형의 처리되지 않은 예외가 'System.NullReferenceException'는
발생 귀하의 XML이 유효하지
왜 당신은 당신이 필요로하는 모든이 하나 개의 노드 때 foreach 문을 사용하여 모든 노드에서 실행중인? –
다양한 노드가 있습니다 ... 예제를 줄이기 위해 하나만 넣었습니다. –
네임 스페이스를 지정하십시오. –