question

olofsan-5365 avatar image
0 Votes"
olofsan-5365 asked ·

linq select without creating xelement

I got a problem with Linq while using select to read out fields from a csv file.
The program should read out the csv file and write it as a xml file in a specific form.
I cannot get it to work the way i like.

 string[] source = File.ReadAllLines(@"PathTo.CSV");
         XElement order = new XElement("ORDER",
             from str in source
             let fields = str.Split(';')
    
                 select new XElement("NOTTHIS",
                    new XElement("ORDERNUMBER", fields[0]),
                    new XElement("ORDERDATE", fields[10]),
                    new XElement("ORDERMARK", fields[15]),
    
                    new XElement("CUSTOMER",
                       new XElement("FIRSTNAME", fields[3]),
                       ...
                       new XElement("TELEPHONE", fields[9])
                 )
             )
         );
 order.Save(FileName);

So this is the code that works. It produces this structure in the output file:


 <ORDER>
   <NOT-THIS>
     <ORDERNUMBER>A</ORDERNUMBER>
     <ORDERDATE>B</ORDERDATE>
     <ORDERMARK>C</ORDERMARK>
     <CUSTOMER>
       <FIRSTNAME>D</FIRSTNAME>
       <TELEPHONE>E</TELEPHONE>
     </CUSTOMER>
   </NOT-THIS>
 </ORDER>

But the Structure i want is this:

 <ORDER>
     <ORDERNUMBER>A</ORDERNUMBER>
     <ORDERDATE>B</ORDERDATE>
     <ORDERMARK>C</ORDERMARK>
     <CUSTOMER>
       <FIRSTNAME>D</FIRSTNAME>
       <TELEPHONE>E</TELEPHONE>
     </CUSTOMER>
 </ORDER>

how can i get rid of the NOT-THIS while still being able to use select and fields[] ?

dotnet-ad-vs
10 |1000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

0 Answers