c# - Change array element name without flattening with XmlSerializer -
i have following code:
[serializable] [xmlroot("database")] public class sqldatabase { public list<sqltable> tables { get; private set; } } if use xmlserializer without custom attribute, generated xml persists list hierarchy:
<database> <tables> <sqltable name="table1" /> <sqltable name="table2" /> </tables> </database> however, i want change element name "sqltable" "table". tried use xmlelement attribute on list
[serializable] [xmlroot("database")] public class sqldatabase { [xmlelement("table")] public list<sqltable> tables { get; private set; } } the name changed hierarchy flattened:
<database> <table name="table1" /> <table name="table2" /> </database> then tried xmlarray attribute, changes name of list not elements within:
[serializable] [xmlroot("database")] public class sqldatabase { [xmlarray("foo")] public list<sqltable> tables { get; private set; } } results in
<database> <foo> <sqltable name="table1" /> <sqltable name="table2" /> </foo> </database> i tried combine these 2 , there exception saying can't used together.
so question is, is there simple way change element name without flattening hierarchy?
Comments
Post a Comment