Можно ли в XmlSerializer, засунуть такой XmlAttributeOverrides,
чтобы в нем не только имена полей допустим были изменены, но и значения чтобы подсовывались другие.
Я имею ввиду такую ситуацию. Есть у меня класс, который сериализуеться через XmlSerializer, но тут (вот досада) оказываеться,
что XmlSerializer хватает все доступные поля, в том числе и базового класса тоже, а мне эти поля (ну или некоторые из них) ну совсем нафик не срались.
Я конечно могу вручную управлять всем процессом сериализации, наследовав от IXmlSerializible, но там у меня не получаеться сериализовывать вложенные структуры иерархий. Хрен его знает как это делать, у меня никак не получаеться, потому что XmlReader и XmlWriter forward-only и я не могу найти примеров где сериализоывалось что-нибудь типа:
<Users>
<User Name="Ivanov" Pasword="ivan">
<Movies>
<Movie Name="Showshank redeption"/>
<Movie Name="Green mile"/>
</Movies>
</User>
<User Name="Petrov">
</User>
<User Name=Sidorov">
<Movies>
<Movie Name="Djentelmeny udachy">
</Movie>
<Movie Name="Mimino"/>
</Movies>
</User>
<User Kuznetsov />
</Users>
Есть выход — вместо того, чтобы использовать методы IXmlSerializible, использовать XmlAttributeOverrides, и указать тем атрибутам базового класса, которые нам не нужны XmlIgnore (базовый класс библиотечный, потому вариант прописать атрибуты для полей базового класса прямо в нем самом не канает).
Но в этом случае теряеться гибкость управления сериализацией. Допустим нельзя изменить значение элемента (хотя тип и имя) можно.
Для чего это может быть необходимым? Для того, чтобы к примеру криптить пароли, или запихивать в элемент, любое другое произвольное значение.
Видимо второй вариант не возможен, по крайней мере я так и не нашел.
А с первым вариантом я просто как-то туплю. Помогите а?