如果选中复选框,我需要使用信息将 XML 属性值保存在数据库中。如果复选框被选中,则属性值为“TRUE”,否则为假。当我使用 foreach 语句时,通常会分配最后一个枚举值。
这是我的代码的一部分:
XmlAttribute xmlAttribute = xmlDoc.CreateAttribute("BooleanValue");
foreach (string value in list) //list is a List<object>
{
XmlNode xmlNode = xmlDoc.CreateNode(XmlNodeType.Element, "VALUE", "");
if (checkBox1.Checked ||
checkBox2.Checked ||
checkBox3.Checked)
xmlAttribute.Value = "TRUE";
if (!checkBox1.Checked ||
!checkBox2.Checked ||
!checkBox3.Checked)
xmlAttribute.Value = "FALSE";
xmlNode.Attributes.Append(xmlAttribute);
xmlNode.InnerText = val;
childNode.AppendChild(xmlNode);
}
当我运行我的应用程序时,无论如何我都会得到一个 XML 属性xmlAttribute "FALSE" 值。
我需要具备的:我需要具备以下 XML:
<ROOT><NODE><VALUE ATTRIBUTE="TRUE">Value 1</VALUE></NODE>
<NODE><VALUE ATTRIBUTE="TRUE">Value 2</VALUE></NODE>
<NODE><VALUE ATTRIBUTE="FALSE">Value 3</VALUE></NODE>
<NODE><VALUE ATTRIBUTE="FALSE">Value 4</VALUE></NODE>
<NODE><VALUE ATTRIBUTE="TRUE">Value 5</VALUE></NODE>
<NODE><VALUE ATTRIBUTE="FALSE">Value 6</VALUE></NODE>
</ROOT>
我实际得到的:
<ROOT><NODE><VALUE ATTRIBUTE="FALSE">Value 1</VALUE></NODE>
<NODE><VALUE ATTRIBUTE="FALSE">Value 2</VALUE></NODE>
<NODE><VALUE ATTRIBUTE="FALSE">Value 3</VALUE></NODE>
<NODE><VALUE ATTRIBUTE="FALSE">Value 4</VALUE></NODE>
<NODE><VALUE ATTRIBUTE="FALSE">Value 5</VALUE></NODE>
<NODE><VALUE ATTRIBUTE="FALSE">Value 6</VALUE></NODE>
</ROOT>
因为在 C# FALSE值停留在 foreach 循环中的最后一个位置
问题是:我该如何分配我的属性的正确值。谢谢