我有一个枚举和成员类型
[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" />
如何在类序列化时更改分隔符?
答案 0 :(得分:2)
您必须完全控制它,然后 - 例如我将该成员标记为[XmlIgnore]
并添加公共string
属性,例如:
[XmlAttribute("search-filter")]
public string SearchShim {
get { /* translate */ }
set { /* translate */ }
}