2009-05-19 6 views
3

Derzeit arbeite ich mit XML und muss Xml-Datei aus C# -Objekt serialization.Suppost befüllen, unten ist das XML-Format, was ich tun möchte.C# -Klasse zu XML (xmlserializaion) Problem

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

Ich habe zwei Klassen DVD und Star.

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;} 
    } 
} 

Ergebnis aus Serialisierung ist

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

Mein Problem ist, ich habe nicht die Art und Weise finden, wie Schauspieler und Schauspielerin Namen zu wickeln, ohne StarName node.Is mit einem Weg, dies zu tun? .Any Idee wäre sehr zu schätzen.

+0

Ich glaube dir nicht! Wenn Sie Ihren Code eingeben, befindet sich das Titelelement außerhalb des Starring-Elements - in der Tat ein Peer dieses Elements. – Cheeso

Antwort

5

Verwenden Sie XmlTextAttribute für StarName-Eigenschaft.

+0

hi baretta Das funktioniert gut. ich danke dir sehr :) – mtt