I need to set a string into something like this
<Student>
<StudentID></StudentID>
<FirstName></FirstName>
<Fees>
<Fee>
<FeeID></FeeID>
</Fee>
</Fees>
</Student>
<Student>
<StudentID></StudentID>
<FirstName></FirstName>
<Fees>
<Fee>
<FeeID></FeeID>
</Fee>
</Fees>
</Student>
... and so on
My code
string strFeeData = ""; // XML Content for Fees
string strStuData = ""; // XML Content for Students with Fees
foreach (var studentData in sorted)
{
foreach(Fee feeData in studentData.Fees)
{
strFeeData = strFeeData + "<Fee>\n\t<FeeID>" + feeData.FeeID + "</FeeID>\n\t<FeeName>" + feeData.FeeName + "</FeeName>\n\t<Amount>" + feeData.Amount + "</Amount>\n\t<DueDate>" + feeData.DueDate + "</DueDate>\n</Fee>\n";
}
strStuData = strStuData + "<Student>\n\t<StudentID>" + studentData.StudentID + "</StudentID>\n<FirstName>" + studentData.FirstName + "</FirstName>\n<LastName>" + studentData.LastName + "</LastName>\n<Grade>" + studentData.Grade + "</Grade>\n<Fees>\n\t" + strFeeData + "</Fees></Student>\n";
}
I got this part outputted correctly
<Student>
<StudentID>1</StudentID>
<FirstName>David</FirstName>
...
<Student>
<StudentID>2</StudentID>
<FirstName>John</FirstName>
But for Fees
<Fees>
<Fee>
<FeeID>12</FeeID>
....
<Fees>
<Fee>
<FeeID>12</FeeID>
I got the same Fees for every students.
What is wrong with my double foreach loop?
(I already checked sorted's Fee has different values, the problem must be at the double foreach loop)
Thanks