xml序列化将xmlelement和xmlattribute一起指定

Rya*_*yan 12 .net c# xml-serialization

鉴于: -

[XmlRoot("Book")]
public class Book
{
   [XmlAttribute]
   public string Title;

   [XmlElement]
   public string Publisher;

   [XmlElement]
   public string PublisherReference;
}
Run Code Online (Sandbox Code Playgroud)

当序列化为XML时会给出

<Book Title="My Book">
   <Publisher>Some Publisher</Publisher>
   <PublisherReference>XYZ123</PublisherReference>
</Book>
Run Code Online (Sandbox Code Playgroud)

我如何将PublisherReference作为Publisher的属性 - 例如

<Book Title="My Book">
   <Publisher Reference="XYZ123">Some Publisher</Publisher>
</Book>
Run Code Online (Sandbox Code Playgroud)

Adr*_*scu 17

[XmlRoot("Book")]
public class Book
{
   [XmlAttribute]
   public string Title;

   [XmlElement]
   public Publisher Publisher;
}

[Serializable]
public class Publisher
{
  [XmlText]
  public string Value;

  [XmlAttribute]
  public string Reference;
}
Run Code Online (Sandbox Code Playgroud)