1

我有一个枚举和它类型的成员

 [Flags]
 public enum SearchFilter
 {
    types = 0x01,
    attributes = 0x02,
    methods = 0x04
 }
 [System.Xml.Serialization.XmlAttribute("search-filter")]
 public SearchFilter search_filter = SearchFilter.types | SearchFilter.attributes | SearchFilter.methods;

当序列化这个类结果属性将是这样的:

<filter search_filter="types attributes methods" />

但需要属性:

<filter search_filter="types|attributes|methods" />

类序列化时如何更改分隔符?

4

1 回答 1

2

然后,您将必须完全控制它 - 例如,我将该成员标记为[XmlIgnore]并添加一个公共string属性,例如:

[XmlAttribute("search-filter")]
public string SearchShim {
    get { /* translate */ }
    set { /* translate */ }
}
于 2010-04-15T15:49:24.393 回答