<?xml version="1.0" encoding="utf-8" ?>
<Countries>
<Country>
<ID>1</ID>
<Name>Nepal</Name>
</Country>
<Country>
<ID>2</ID>
<Name>India</Name>
<Country>
<ID>3</ID>
<Name>China</Name>
</Country>
<Country>
<ID>4</ID>
<Name>Bhutan</Name>
</Country>
<Country>
<ID>5</ID>
<Name>USA</Name>
</Country>
</Country>
</Countries>
使用DataSet()我只提取国家的名称并将其放入asp.net的下拉列表中。有这个ID标签有什么意义?这是一个xml要求吗?
答案 0 :(得分:7)
这不是XML要求。它可能是标准的唯一标识符。这样,如果国家的名称发生变化(这似乎经常发生),这使您可以自由地在此文件中更改它而不会搞砸依赖数据,因为其他数据应该存储ID,而不是国家名称
使用该ID的另一个原因是您的应用程序可能需要以不同语言显示相同的国家/地区名称。然后,您的应用程序可以向用户显示相应的翻译名称,但就用户选择国家/地区时存储的数据而言,应严格基于ID。
答案 1 :(得分:3)
很多时候,ID是唯一标识符。假设您希望两个国家/地区可能具有相同的名称,那么您需要一个每个国家/地区都独有的ID。在您的情况下,ID似乎没有必要,但将其保存在文件中将是一种很好的做法。
答案 2 :(得分:2)
我不知道XML本身需要它,但是对于大量的操作,最好有一个记录唯一的键值,数字最适合。这听起来像是为了你的目的,丢弃这些信息是好的,但无论它出现在哪里,它都覆盖了它的基础,以便说明其他潜在的用途。
答案 3 :(得分:2)
这是一个唯一的标识符,但是在你有国家代码的情况下,代码本身通常是唯一的,所以它总体上没什么用处。如果不方便按名称识别单个记录,它可以用作索引器。
答案 4 :(得分:0)
节点的外观可能与许多可能性有关,所有这些都可能源于数据模式。
'ID'可能是validCountry表中的一列,正在选择ID和Country列。
出于某种原因,你将其放入下拉列表中。用户将选择一个国家,并且可能会插入或更新一些数据。您应该将国家/地区名称或ID存储在此新/更新的行中吗?您可能需要一个外键,使用该ID来引用该国家/地区。否则,当一个国家更改其名称时,您会遇到奇怪的情况。
事实上,我认为你需要下拉条目中value属性的ID(至少这是经常这样做的。)