2009-05-19 9 views
3

現在、私はxmlで作業していますが、C#オブジェクトserializaion.Suppostからxmlファイルを作成する必要があります。以下はxml形式です。C#クラスからXML(xmlserializaion)の問題

<DVD> 
<Starring> 
    <Star position="actor"> 
     Tom Hanks 
    </Star> 
    <Star position="actress"> 
     Robin Wright 
    </Star> 
<Title>Forrest Gump</Title> 
</Starring> 
</DVD> 

私はDVDとスターの2つのクラスを持っています。直列化から

Public class DVD 
{ 
    string title; 
    public string Title{get{return title;}set {title=value;}} 
    List<Star> Starring=new List<Star>(); 
} 
public class Star 
{ 
    string star; 
    string pos; 
    [XmlAttribute] 
    public string Position{get{return pos;}set{pos=value;}} 
    //Actually i don't want this property as a xmlelement 
    public String StarName 
    { 
    get{return star;} 
    set {star=value;} 
    } 
} 

結果は

<DVD> 
<Starring> 
    <Star position="actor"> 
     <StarName>Tom Hanks</StarName> 
    </Star> 
    <Star position="actress"> 
     <StarName>Robin Wright</StarName> 
    </Star> 
<Title>Forrest Gump</Title> 
</Starring> 
</DVD> 

私の問題は、.ANY?私はそこにこれを行う方法をStarName node.Isがなくても、俳優や女優の名前をラップするためにどのような方法を見つけることができませんですアイデアは非常に感謝しています。

+0

私はあなたを信じていません!あなたのコードが与えられると、Title要素はStarring要素の外にあります - 実際にはその要素のピアです。 – Cheeso

答えて

5

StarNameプロパティでXmlTextAttributeを使用します。

+0

こんにちはbaretta それはうまく動作します。どうもありがとうございます :) – mtt