xml中“ID”标记的重点是什么?

时间:2009-06-12 17:32:06

标签: asp.net xml vb.net

    <?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要求吗?

5 个答案:

答案 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(至少这是经常这样做的。)