c# - XML Parsing with LINQ with deep nested loops -


i having problems getting coveredpersons , coveredperson tag values.

<header>     <model_name>sample model name</model_name> </header> <data>     <contractnumber>0-99-54321</contractnumber>     <initialeffectivedate>11/04/2011</initialeffectivedate>     <contractenddate></contractenddate>     <renewaldate>11/04/2021</renewaldate>     <nextcontractbirthdate>11/04/2011</nextcontractbirthdate>     <smokerclassification>non smoker</smokerclassification>     <billingfrequency>annually</billingfrequency>     <premiumwithtax>270.23</premiumwithtax>     <annualpolicyfee>100.00</annualpolicyfee>     <payerrelationtosubscriber></payerrelationtosubscriber>     <payerasperson>         <firstname>steve</firstname>         <middlename1></middlename1>         <lastname>jordan</lastname>         <secondlastname></secondlastname>     </payerasperson>     <subscribedoptions>         <offeredentity>             <code>a-1</code>             <name>sample entity</name>         </offeredentity>         <coveredpersons>             <coveredperson>                 <firstname>steve</firstname>                 <middlename1></middlename1>                 <lastname>square</lastname>                 <birthdate>01/01/1980</birthdate>                 <gender>male</gender>             </coveredperson>             <eliminationperiod></eliminationperiod>         </coveredpersons>         <coverageamount>75,000.00</coverageamount>         <premiumwithtax>61.50</premiumwithtax>         <initialeffectivedate>11/04/2011</initialeffectivedate>         <contractenddate></contractenddate>         <terminationdate></terminationdate>         <expirationdatetoconvert>01/01/2040</expirationdatetoconvert>         <coveredpersoncount>1</coveredpersoncount>     </subscribedoptions>     <subscribedoptions>         <offeredentity>             <code>b-1</code>             <name>sample entity 2</name>         </offeredentity>         <coveredpersons>             <coveredperson>                 <firstname>juan</firstname>                 <middlename1></middlename1>                 <lastname>osorio</lastname>                 <birthdate>01/01/1980</birthdate>                 <gender>male</gender>             </coveredperson>             <eliminationperiod></eliminationperiod>         </coveredpersons>         <coverageamount>5,000.00</coverageamount>         <premiumwithtax>0.00</premiumwithtax>         <initialeffectivedate>11/04/2011</initialeffectivedate>         <contractenddate></contractenddate>         <terminationdate></terminationdate>         <expirationdatetoconvert>01/01/2040</expirationdatetoconvert>         <coveredpersoncount>1</coveredpersoncount>     </subscribedoptions>             <subscriber>         <firstname>juan</firstname>         <lastname>osorio</lastname>         <middlename1></middlename1>         <secondlastname>uno</secondlastname>         <gender>male</gender>         <age>31</age>     </subscriber>     <offeredentity>         <name>sample base entity</name>         <code>code-54321</code>     </offeredentity> </data> 

this have far:


foreach (var xsubscribedoptions in (from suboptions in xdoc.descendants("subscribedoptions")                                         suboptionsoffentity in xdoc.descendants("subscribedoptions").descendants("offeredentity")                                         suboptionscovperson in xdoc.descendants("subscribedoptions").descendants("coveredperson")                                         suboptionscovpersoncovperson in xdoc.descendants("coveredpersons").descendants("coveredperson")                                         select new                                         {                                             offeredentitycode = suboptionsoffentity.element("code").value,                                             offeredentityname = suboptionsoffentity.element("name").value,                                             subscribedoptionscoverageamount = suboptions.element("coverageamount").value,                                             subscribedoptionspremiumwithtax = suboptions.element("premiumwithtax").value,                                             subscribedoptionsinitialeffectivedate = suboptions.element("initialeffectivedate").value,                                             subscribedoptionscontractenddate = suboptions.element("contractenddate").value,                                             subscribedoptionsterminationdate = suboptions.element("terminationdate").value,                                             subscribedoptionsexpirationdatetoconvert = suboptions.element("expirationdatetoconvert").value,                                             subscribedoptionscoveredpersoncount = suboptions.element("coveredpersoncount").value,                                             coveredpersonfirstname = suboptionscovpersoncovperson.element("firstname").value,                                             coveredpersonmiddlename1 = suboptionscovpersoncovperson.element("middlename1").value,                                             coveredpersonlastname = suboptionscovpersoncovperson.element("lastname").value,                                             coveredpersonbirthdate = suboptionscovpersoncovperson.element("birthdate").value,                                             coveredpersongender = suboptionscovpersoncovperson.element("gender").value,                                             coveredpersoneliminationperiod = suboptionscovperson.element("eliminationperiod").value                                            }))     {    } 

you use

coveredpersonfirstname = suboptions.xpathselectelement("./coveredpersons/coveredperson/firstname").value coveredpersonlastname = suboptions.xpathselectelement("./coveredpersons/coveredperson/lastname").value 

etc. each element need retrieve coveredperson tag


Comments

Popular posts from this blog

php - What is the difference between $_SERVER['PATH_INFO'] and $_SERVER['ORIG_PATH_INFO']? -

fortran - Function return type mismatch -

queue - mq_receive: message too long -