경고 - 저는 XML 전문가가 아닙니다.C#/.NET XML serializer - 속성을 요소 이름으로 사용
:[XmlArrayItem(ElementName = "Field")]
public List<UserInfoField> Fields;
및
[Serializable, XmlRoot("Field")]
public class UserInfoField
{
[XmlAttributeAttribute("name")]
public string Name;
[XmlText]
public string Value;
[XmlAttributeAttribute("look-up")]
public bool LookUp;
}
대신이 직렬화 출력을 얻을 수 어쨌든 거기 :
<Fields>
<Field name="BusinessName" look-up="true">My Business</Field>
<Field name="BusinessType" look-up="false">Nobody really knows!</Field>
</Fields>
이 다시 매핑 : 여기
내가 가진 무엇<Fields>
<BusinessName look-up="true">My Business</BusinessName>
<BusinessType look-up="false">Nobody really knows!</BusinessType>
</Fields>
잘 (
나는이 지나치게 마법이 될 수 있으며이 작동 안 좋은 이유가 상상할 수있는 것을 이해 ...하지만 나는 그것이 수도 파악하고이 :)
, 당신이 속성을 사용하여 요소의 이름을 덮어 쓸 수 있습니다 할 [XmlArrayItem] –
당신은 같이 동적으로 XmlSerializer를를 사용하여 요소 이름을 재정의 할 수 없습니다. 정적으로 정의 할 수 있지만이 경우에는 데이터 값을 기반으로하는 이름이 필요합니다. 댓글을 수정하거나 삭제하십시오. 정확하지 않습니다. – jro