Я думаю, вам придется манипулировать самим XML до / после его преобразования в Object / XML.
Но подумайте о том, что вы пытаетесь сделать.
Я бы хотелне согласен с вами по поводу того, что теги некрасивы.Я думаю, что они помогают в удобочитаемости, они держат дочерние теги вместе.
представьте тег с двумя такими коллекциями без тега переноса.При вашем подходе они могут быть легко смешаны вместе, что затруднит их чтение и сериализацию / десериализацию.
Пример:
<And>
<Match Regex="\d" />
<Replace From="123" To="ABC" />
<Match Regex="[a-záéíóöőúüű]" />
<Replace From="_" To=" " />
<Match Regex="[A-ZÁÉÍÓÖŐÚÜŰ]" />
<Replace From="-" To="#" />
</And>
Вместо
<And>
<Matches>
<Match Regex="\d" />
<Match Regex="[a-záéíóöőúüű]" />
<Match Regex="[A-ZÁÉÍÓÖŐÚÜŰ]" />
</Matches>
<Replaces>
<Replace From="123" To="ABC" />
<Replace From="_" To=" " />
<Replace From="-" To="#" />
</Replaces>
</And>
Вы сами решаете, какой из них читаемый и обслуживаемый.
Подумайте, что может пойти не такпредложенный вами подход и почему XmlSerializer
в .Net Framework
способствует текущей реализации.