2011-10-27 38 views
0

的XSD對象序列我已經從運行,其具有以下特性與背襯字段XSD.EXE生成的對象:C#生成的日期時間

private System.DateTime deliveryDateField; 

/// <remarks/> 
public System.DateTime DeliveryDate 
{ 
    get 
    { 
     return this.deliveryDateField; 
    } 
    set 
    { 
     this.deliveryDateField = value; 
    } 
} 

這是從生成:

<xs:element name="DeliveryDate" type="xs:dateTime" minOccurs="0"/> 

其我試圖用連載:

var t = new Transaction(); 
t.DeliveryDate = new DateTime(2011,11,11); 
var xs = new XmlSerializer(t.GetType()); 

string outString; 

using (var ms = new MemoryStream()) 
{ 
    xs.Serialize(ms, t); 
    ms.Position = 0; 
    using (var sr = new StreamReader(ms)) 
    { 
     outString = sr.ReadToEnd(); 
    } 
} 
return outString; 

任何值我設置爲它是剛開g丟失在序列化過程中,而其他元素都很好。我需要做些什麼才能正確地序列化?

感謝

回答

3

你可能也有一個名爲DeliveryDateSpecified您的交易類的屬性?這是因爲您的DeliveryDate不是強制性的。如果設置爲true您DeliveryDate也將獲得序列化。

+0

唉唉謝謝你,我不知道我需要做,但非常有意義 – bobwah

+0

XmlSerializer的使用指定的屬性來確定一個非空的屬性應序列化。 –