XML值的自定义元帅数组

时间:2018-09-26 18:45:52

标签: xml go

我需要以某种方式写出以下一组structs到XML:

type Parameter struct {                                                                                                                                                          
    ParameterType             string        `xml:"param_type" json:"parameterType"`                                                                                              
    ParameterValue            string        `xml:"param_value,omitempty" json:"parameterValue,omitempty"`                                                                        
} 

type Condition struct {                                                                                                                                                          
    XMLName        xml.Name                                                                                                                         
    LeftParameter  Parameter                                                                                                                            
    Comparator     string      `xml:"comparator"`                                                                                           
    RightParameter Parameter                                                                                                                             
}

type Conditions struct {                                                                                                                                                        
    ConditionList  []Condition  `xml:"condition,omitempty" json:"condition,omitempty"`                                                                                         
}

我需要在XML中将LeftParameterRightParameter都写为<param>。它需要看起来像这样:

<conditions>                                                                                                                                                             
  <condition>                                                                                                                                                            
    <param>                                                                                                                                                              
      <param_type>pop_ref</param_type>                                                                                                                                   
      <param_value>PtAge</param_value>                                                                                                                                   
    </param>                                                                                                                                                             
    <comparator>GE</comparator>                                                                                                                                          
    <param>                                                                                                                                                              
      <param_type>value</param_type>                                                                                                                                     
      <param_data_type>number</param_data_type>                                                                                                                          
      <param_value>8</param_value>                                                                                                                                       
    </param>                                                                                                                                                             
  </condition>  
<conditions>                                                                                                                                                             

我认为我应该为此使用Marshaller界面,但是我不知道如何使它工作。

0 个答案:

没有答案