2009-06-12 12 views
-1
<?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の要件ですか?xmlの "ID"タグのポイントは何ですか?

答えて

3

多くの場合、IDは一意の識別子です。 2つの国が同じ名前を持つことができる可能性を持ちたいとしたら、各国に固有のIDが必要です。あなたのケースでは、IDは不要なように見えますが、ファイルに保存するのは良い方法です。

2

XMLにはそれが必要であることはわかりませんが、たくさんの操作を行うには、レコードに固有のキー値を持つことが最善です。数字はそのために最適です。あなたの目的のために聞こえるのは、その情報を破棄するのは良いことですが、それが生産された場所であれば、そのベースをカバーして他の潜在的な用途について話すことになります。

2

これは一意の識別子ですが、国コードを使用している場合は、通常はコード自体が一意であるため、全体的な目的はほとんどありません。個々のレコードを名前で識別することが不便な場合は、インデクサーとして使用できます。

7

これはXML要件ではありません。標準的な一意の識別子として存在する可能性があります。そうすれば、国の名前が変わる(これはかなり頻繁に起こるように見える)場合、従属データを壊さずにこのファイル内で自由に変更することができます。国名ではなくIDを格納する必要があります。 。

IDを使用する別の理由は、アプリケーションで異なる国の言語で同じ国名を表示する必要があることです。アプリケーションは、適切な変換された名前をユーザーに提示できますが、ユーザーが国を選択すると格納するデータに関しては、IDに厳密に基づいていなければなりません。

0

ノードの外観は、データスキーマに起因する多くの可能性に関連している可能性があります。

「ID」はおそらくvalidCountryテーブルの列であり、ID列とCountry列が選択されています。

あなたは理由のためにこれをドロップダウンに入れています。ユーザーは国を選択し、おそらく一部のデータが挿入または更新されます。この新しい/更新された行に国名またはIDを格納する必要がありますか? IDを使って国を参照するためには、おそらく外部キーが必要です。さもなければ、国がその名前を変えると、あなたは奇妙な状況に陥ります。

実際には、ドロップダウンのエントリの値属性のIDが必要になると思います(少なくともそれはよく行われる方法です)。

関連する問題