我正在使用各种百分比值修改XML文件。在一个XML文件中有多个元素。我有一个特定元素的百分比,我需要将剩余的百分比分配给剩余的元素。以下是我存储在服务器中的示例XML文件。在xml标记的多个元素上平均分配百分比
<exam>
<name>Maths</name>
<percentage>100</percentage>
</exam>
<exam>
<name>Physics</name>
<percentage>70</percentage>
</exam>
<exam>
<name>Chemistry</name>
<percentage>70</percentage>
</exam>
我有一个特定主题的百分比值。例如,我有数学的百分比值,我用下面的代码对数学的百分比值进行了硬编码。
foreach (XElement xmltag1 in xmltag.Descendants(subsection))
{
if (xmltag1.Element("name").Value.Equals("Maths"))
{
xmltag1.Element("percentage").Value = "75";
}
}
现在我需要更新物理和化学的剩余主体的百分比值,而不是小数。所以我正在使用下面的逻辑。
int totalsections = subclasscount;
// subclass count is a method which would return the total number of subclasses inside a particular xml tag. I have that method available with me
int remainingallocatedpercentage = 25/totalsections;
foreach (XElement xmltag1 in xmltag.Descendants(subsection))
{
if ((remainingallocatedpercentage % 1) == 0)
{
if (!xmltag1.Element("name").Value.Equals("Maths"))
{
xmltag1.Element("percentage").Value = remainingallocatedpercentage;
}
}
else
{
}
}
我不太清楚如何处理else路径。所以我需要逻辑来实现它。我想告诉你,我不知道还有什么其他学科价值可用(就像物理学,化学有多个学科是动态的而不是静态的),所以我需要在所有科目中平均分配剩余的百分比。
问题是,你想在else子句中做什么? – Marco
马可抱歉,我现在编辑了我的问题,现在您应该能够弄清楚我确实需要什么。 – stangada
在else子句中,我想在整个数字中剩下的主题中平均分配百分比。对于数学我有75分配,所以我想分配22物理和化学23。 – stangada