2

DateTimeC#は2つのxs:durationデータ型への変換をサポートしていますか?(これには2つのDateTime値が必要だと思いますか?)

参照:http ://www.w3.org/TR/xmlschema-2/#durationおよびhttp://www.w3schools.com/schema/schema_dtypes_date.asp(途中まで)

4

2 に答える 2

5

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; }
于 2012-11-05T14:22:04.553 に答える
3

TimeSpanはあなたが探しているものです。

TimeSpanオブジェクトは、正または負の日数、時間、分、秒、および秒の端数として測定される時間間隔(時間の長さまたは経過時間)を表します。TimeSpan構造体を使用して時刻を表すこともできますが、これは時刻が特定の日付と無関係である場合に限ります。それ以外の場合は、代わりにDateTimeまたはDateTimeOffset構造を使用する必要があります。

例:

DateTime dt1 = new DateTime(2012, 10, 2, 10, 20, 00);
DateTime dt2 = DateTime.Now;

TimeSpan ts = dt1 - dt2;
于 2012-11-05T12:53:39.440 に答える