2011-11-24 2 views
0

클래스 (System.Xml.Serialization)를 비 직렬화하는 xml 파일에 구분 된 값이 포함 된 노드가 있습니다. 데이터의 문자열은 다음과 같은 특성의 목록으로 변환됩니다 있도록즉석에서 .NET 직렬화 변환

<Data>1,2,3,4,8,11<Data> 

이는 직렬화 과정에서 정수 데이터를 분할 가능 :

는 XML 데이터 요소 노드의 샘플입니다 :

List<int> Data {get; set;} 
+0

왜 쉼표로 구분 된 값 저장하기 위해 XML을 사용하고 있습니까? 이런 식으로 최악의 두 세계를 얻지 못했습니까? –

답변

1

내가 직렬화 XML에 LINQ를 사용하는 것이 좋습니다 싶지만, 당신이 System.Xml.Serialization 사용하는 경우 문자열을 분할하고을 채우는 String 속성에 대한 사용자 정의 세터를 사용하여이 작업을 수행 할 수속성. 미님은 일반 <int>을 추가 한 후

List listData {get; set;} 
String Data 
{ 
    get 
    { 
     return String.Empty; 
    } 
    set 
    { 
     listData.AddRange(value.Split(',')); 
    } 
} 

Munim의 편집 한 후

는 세터는 다음과 같이해야합니다 :

set 
{ 
    string[] temp = value.Split(','); 
    foreach (string s in temp) 
     listData.Add(Convert.ToInt32(s)); 
}