2010-12-13 2 views
0

나는 창 전화 7 응용 프로그램을 개발 중입니다. 내 응용 프로그램의 데이터베이스로 XML을 사용하고 있습니다. 내 응용 프로그램에 데이터베이스 테이블 대신 XML 파일을 사용하고 있습니다. 내 XML 파일 중 하나에 대해 다음 구조를 가지고 있습니다. 위의 XML 파일에서 XML 파일에 데이터를 삽입하는 동안 xml 노드 중 하나에 대해 고유 ID를 동적으로 생성하는 방법은 무엇입니까?

<?xml version="1.0" encoding="utf-8" ?> 
<Categories> 
    <Category> 
    <Category_ID></Category_ID> 
    <Category_Name></Category_Name> 
    <TransactionType_ID></TransactionType_ID> 
    </Category> 
    <Category> 
    <Category_ID></Category_ID> 
    <Category_Name></Category_Name> 
    <TransactionType_ID></TransactionType_ID> 
    </Category> 
</Categories> 

나는 XML에 LINQ를 사용하여 내 모바일 애플리케이션의 사용자 인터페이스를 통해 CATEGORY_NAME & TransactionType_ID의 값을 삽입하고있다. 위 XML 파일에서 Category_ID를 기본 키 & TransactionType_ID를 다른 xml 파일에 속하는 외래 키로 간주합니다. 위 XML 파일에서 우리는 데이터베이스 테이블에서와 마찬가지로 노드 Category_ID에 대한 자동 증가 ID를 생성하려고합니다. Category_ID 노드에 대해 자동 증가 ID를 생성하는 방법? 위의 문제를 해결할 수있는 코드, 솔루션 또는 링크를 제공해 주시겠습니까? 누군가 다른 아이디어가 있다면 공유하십시오. 내가 틀린 일을하고 있다면 나를 안내 해주십시오.

답변

3

당신은 당신이 (세르게이 제안처럼) GUID를 사용하여 사용하거나 정수를 사용할 수 있습니다 예를

에 대한
var uniqueIdentifier = Guid.NewGuid();//Will be generate unique value 
0

을 가이 드 를 사용할 수 있습니다. Guid.NewGuid() 메서드는 각 호출에 대해 새로운 전역 고유 ID를 반환합니다. int 값을 대신 사용하려는 경우 응용 프로그램 설정에서 이미 사용한 가장 높은 ID를 저장할 수 있습니다. 응용 프로그램 설정에서 int 유형의 ArticlIdMax 속성을 만듭니다. 다음 코드를 사용하여 새 ID를 얻을 수 있습니다.

int newID = Test.Properties.Settings.Default.ArtcilIdMax++; 
Test.Properties.Settings.Default.Save(); 
관련 문제