2009-06-12 5 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는 고유 한 식별자입니다. 두 나라가 같은 이름을 가질 수있는 가능성을 가지기를 원한다면 각 국가마다 고유 한 ID가 필요합니다. 귀하의 경우 ID는 불필요한 것으로 보이지만 파일에 보관하면 좋은 습관이됩니다.

2

필자는 XML이 그 자체로 필요하다는 것을 알지 못하지만 많은 조작을 위해 레코드에 고유 한 키 값을 갖는 것이 가장 좋으며 숫자가 가장 좋습니다. 그것은 귀하의 목적처럼 들리 겠지만, 정보를 폐기해도 괜찮습니다. 그러나 그것이 생산 된 곳이라면 어디서든지 그 기반을 덮어서 다른 잠재적 인 용도로 말할 수 있습니다.

2

고유 한 식별자이지만 국가 코드가있는 경우 코드 자체는 일반적으로 고유하므로 어쨌든 거의 용도가 거의 없습니다. 개별 레코드를 이름으로 식별하는 것이 불편한 경우 인덱서로 사용할 수 있습니다.

7

XML 요구 사항은 아닙니다. 거기에는 표준 고유 식별자가있을 수 있습니다. 그렇게하면 국가의 이름이 바뀌면 (꽤 자주 발생하는 것처럼 보입니다), 다른 데이터는 국가 이름이 아닌 ID를 저장해야하므로 종속 파일을 수정하지 않고 파일에서이 파일을 자유롭게 변경할 수 있습니다. .

ID를 사용하는 또 다른 이유는 응용 프로그램이 다른 국가의 언어로 동일한 국가 이름을 표시해야 할 수도 있기 때문입니다. 그런 다음 응용 프로그램은 적절한 번역 된 이름을 사용자에게 표시 할 수 있지만 사용자가 국가를 선택하면 저장하는 데이터 측면에서 엄격하게 ID를 기반으로해야합니다.

0

노드의 모양은 여러 가지 가능성과 관련이 있으며, 모두 데이터 스키마에서 비롯됩니다.

'ID'는 아마도 validCountry 테이블의 열이며 ID 열과 국가 열이 선택됩니다.

이유 때문에 드롭 다운에 넣고 있습니다. 사용자가 국가를 선택하고 일부 데이터가 삽입되거나 업데이트 될 것입니다. 이 새로운/업데이트 된 행에 국가 이름이나 ID를 저장해야합니까? 아마도 ID를 사용하여 국가를 참조하는 외래 키가 필요할 것입니다. 그렇지 않으면 국가가 이름을 바꿀 때 이상한 상황이 발생합니다.

사실 나는 당신이 드롭 다운에서 항목의 값 속성에 대한 ID를 원할 것이라고 생각할 것입니다. (적어도 그것이 자주 수행되는 방법입니다.)

관련 문제