Меня интересует, как лучше всего задать имена пользовательских элементов при использовании списка примитивов с DataContractSerializer. Допустим, у меня есть следующий класс, который содержит список строк в качестве элемента данных.
[DataContract]
public class ClassName
{
[DataMember]
public List FieldName { get; set; }
}
По умолчанию он сериализуется следующим образом:
Value 1
Value 2
Value 3
Я хотел бы сделать XML как можно более простым для преобразования через XSLT, поэтому в идеале я переименовал бы теги во что-то более полезное, например Value.
Одно из возможных решений включает создание класса, расширяющего Collection, и установку ItemName для параметра CollectionDataMember, который я нашел здесь . Мне было интересно, есть ли способ достичь той же цели без необходимости в этом дополнительном классе или другой форме класса-оболочки. XML-сериализатор использует для этого параметры XMLArray и XMLArrayItem, но DataContractSerializer, похоже, не имеет аналогичных функций.
Спасибо за любые советы или идеи!