【发布时间】:2014-01-29 23:20:24
【问题描述】:
我正在使用 xmlserialize 类创建一个 xml 文件,我得到的输出几乎就是我需要的。 这就是我得到的
<?xml version="1.0" encoding="UTF-8"?>
<pdf file-name="C:\Users\d.sassoli\Desktop\media\mergiato.pdf" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<document>
<document start-page="1">
<SheetChange>
<SheetChange sheet-type="A4" page-number="1"/>
<SheetChange sheet-type="A3" page-number="2"/>
</SheetChange>
</document>
</pdf>
这就是我想要的
<?xml version="1.0" encoding="UTF-8"?>
<root xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<pdf file-name="C:\Users\d.sassoli\Desktop\media\mergiato.pdf" >
<document start-page="1">
<SheetChange sheet-type="A4" page-number="1"/>
<SheetChange sheet-type="A3" page-number="2"/>
</pdf>
这些是我定义xml结构的类
[XmlRootAttribute("pdf", IsNullable = false)]
public class Pdf
{
private Pdf() { }
public static Pdf Builder()
{
Pdf pdf = new Pdf();
return pdf;
}
[XmlAttribute("file-name")]
public List<string> FileName { get; set; }
public List<document> document;
}
public class document
{
private document() { }
public static document Builder()
{
document doc = new document();
return doc;
}
[XmlAttribute("last-page")] public string LastPage;
[XmlAttribute("start-page")] public string StartPage;
public List<SheetChange> SheetChange;
}
public class SheetChange
{
private SheetChange() { }
public static SheetChange Builder()
{
SheetChange sheetChange = new SheetChange();
return sheetChange;
}
[XmlAttribute("page-number")]
public string PageNumber { get; set; }
[XmlAttribute("sheet-type")]
public string SheetType { get; set; }
}
我尝试摆弄 xmlattribute 但没有达到我想要的效果。
【问题讨论】:
标签: c# xmlserializer