DateTimeC#は2つのxs:durationデータ型への変換をサポートしていますか?(これには2つのDateTime値が必要だと思いますか?)
参照:http ://www.w3.org/TR/xmlschema-2/#durationおよびhttp://www.w3schools.com/schema/schema_dtypes_date.asp(途中まで)
DateTimeC#は2つのxs:durationデータ型への変換をサポートしていますか?(これには2つのDateTime値が必要だと思いますか?)
参照:http ://www.w3.org/TR/xmlschema-2/#durationおよびhttp://www.w3schools.com/schema/schema_dtypes_date.asp(途中まで)
XMLConvertここで説明されているように、クラスではこれがサポートされていました:http: //kennethxu.blogspot.de/2008/09/xmlserializer-doesn-serialize-timespan.html  
私はこのコードを使用することになり、xmlに正しい値が表示されます
    [XmlElementAttribute("ValidThrough", DataType = "duration")]
    [DataMember(Name = "ValidThrough")]
    [DefaultValue("P10D")]
    public string ValidThrough
    {
        get
        {
            return XmlConvert.ToString(_validThroughField);
        }
        set
        {
            _validThroughField= XmlConvert.ToTimeSpan(value);
        }
    }
    [XmlIgnore]
    public TimeSpan _validThroughField { get; set; }
    TimeSpanはあなたが探しているものです。
TimeSpanオブジェクトは、正または負の日数、時間、分、秒、および秒の端数として測定される時間間隔(時間の長さまたは経過時間)を表します。TimeSpan構造体を使用して時刻を表すこともできますが、これは時刻が特定の日付と無関係である場合に限ります。それ以外の場合は、代わりにDateTimeまたはDateTimeOffset構造を使用する必要があります。
例:
DateTime dt1 = new DateTime(2012, 10, 2, 10, 20, 00);
DateTime dt2 = DateTime.Now;
TimeSpan ts = dt1 - dt2;