2011-12-27 7 views
-5

私は2つのオブジェクト(ブックとシェルフ)を持っています。入れ子になっていないオブジェクトをネストしてシリアライズ

class Book 
{ 

} 

class Shelf 
{ 

} 

ご覧のとおり、これらは内側にはありません。私はここでそれで亀裂を取り、情報をあなたが必要与えてくれたと仮定するつもりです

<Book bookAttribute=""> 
    <Shelf>bla</Shelf> 
    <Shelf>bla1</Shelf> 
</Book> 
+3

あなたのクラスの例では関係がなく、例の中の情報bla、bla1、およびbookAttributeについて何もないことを考慮すると、私はあなたの心を読んで解決策を思いつくのは難しいです。 –

+0

XMLは1冊の本と2冊の棚を示していることは言うまでもなく...ここに詳しい情報が必要になる! –

+1

シリアル化をお探しですか? XML文書を作成しようとしているようです。その場合、可能です。あなたが本当にシリアライゼーションの後であれば、あなたのオブジェクトモデルはあなたが書き込まれると思われるXMLを反映する必要があります。 –

答えて

0

:どのように私はこのようなXMLを取得するように、それらの直列化

その後、 - (しかし、私は、全体のシナリオが何であるかを知らない私には後方に思える)次のことができ、あなたの中のループ、それを次に

class Book 
{ 
    [XmlAttribute("bookAttribute")] 
    public string bookAttribute = ""; 

    [XmlElement("Shelf")] 
    List<Shelf> Shelves = new List<Shelf>(); 
} 

class Shelf 
{ 

} 

あなたが本や棚の間のプログラムの関係を作成します。このようなクラス構造XMLとして書き込むために "保存"ルーチン。

オリジナルの構造が変更できない場合には、あなたはまだそれらからクラスを派生することができます

class ExpandedBook: Book 
{ 
    [XmlAttribute("bookAttribute")] 
    public string bookAttribute = ""; 

    [XmlElement("Shelf")] 
    List<Shelf> Shelves = new List<Shelf>(); 
} 

...クラスはあなたが醜い配列を作成する必要があります。その場合には封入されていない限りアレイ。

関連する問題