2014-09-19 1 views
0

질문이 있습니다.C#의 Entity to Xml에 같은 태그가 사용되었습니다

============= 정상 ===========

class trx() 
{ 
    string trx_name; 
    string type_id; 
} 

var 0 = new trx(){trx_name="1",trx_name="2"} 

--- XML ​​

[XmlSerializer serializer = new XmlSerializer(typeof(trx)); 
[serializer.Serialize(File.OpenWrite(@".\MyXml.xml"), o);] 

로 법인 변경 ---- XML ​​결과 ------

<trx> 
    <trx_name>1</trx_name> 
    <type_id>2</type_id> 
</trx> 

=============================

Q : 하지만 난 trx XML이 필요합니다

<trx> 
    <trx_name>a</trx_name> 
    <trx_name>b</trx_name> 
    <trx_name>c</trx_name> 
    <trx_name>d</trx_name> 
</trx> 

질문을 해결하는 방법 ???

미리 도움 주셔서 감사합니다.

답변

0

다음과 같이하십시오.

public class trx 
    { 
     public string trx_name { get; set; } 
    } 

    public class CustomSerializer 
    { 
     private static void Write(string filename) 
     { 
      List<trx> trxs = new List<trx>(); 
      trxs.Add(new trx {trx_name = "Name1"}); 
      trxs.Add(new trx {trx_name = "Name2"}); 
      XmlSerializer x = new XmlSerializer(typeof (List<trx>)); 
      TextWriter writer = new StreamWriter(filename); 
      x.Serialize(writer, trxs); 
     } 

     private static List<trx> Read(string filename) 
     { 
      var x = new XmlSerializer(typeof (List<trx>)); 
      TextReader reader = new StreamReader(filename); 
      return (List<trx>) x.Deserialize(reader); 
     } 
    } 
}