SoapDuration Class

Provides static methods for the serialization and deserialization of TimeSpan to a string that is formatted as XSD duration.

Namespace:  System.Runtime.Remoting.Metadata.W3cXsd2001
Assembly:  mscorlib (in mscorlib.dll)

[ComVisibleAttribute(true)]
public sealed class SoapDuration

For more information about XSD data types, see the "XML Data Types Reference" in the MSDN Library at http://msdn.microsoft.com/library.

The following code example shows how to use the methods in the SoapDuration class to convert between a TimeSpan object and an XSD duration string.

using System;
using System.Runtime.Remoting.Metadata.W3cXsd2001;

public class Demo
{
    public static void Main(string[] args)
    {
        // Parse an XSD duration to create a TimeSpan object. 
        // This is a duration of 2 years, 3 months, 9 days, 12 hours,  
        // 35 minutes, 20 seconds, and 10 milliseconds.
        string xsdDuration = "P2Y3M9DT12H35M20.0100000S";
        TimeSpan timeSpan = SoapDuration.Parse(xsdDuration);
        Console.WriteLine("The time span contains {0} days.", 
            timeSpan.Days);
        Console.WriteLine("The time span contains {0} hours.", 
            timeSpan.Hours);
        Console.WriteLine("The time span contains {0} minutes.", 
            timeSpan.Minutes);
        Console.WriteLine("The time span contains {0} seconds.", 
            timeSpan.Seconds);

        // Serialize a TimeSpan object as an XSD duration string. 
        // This object represents a time span of 399 days, 12 hours, 
        // 35 minutes, 20 seconds, and 10 milliseconds.
        TimeSpan duration = new TimeSpan(399, 12, 35, 20, 10);
        Console.WriteLine("The duration in XSD format is {0}.",
            SoapDuration.ToString(duration));

        // Print the XSD type string of the SoapDuration class.
        Console.WriteLine("The XSD type of SoapDuration is {0}.",
            SoapDuration.XsdType);
    }
}
#using <mscorlib.dll>
#using <System.dll>
#using <System.Runtime.Remoting.dll>
using namespace System;
using namespace System::Runtime::Remoting::Metadata::W3cXsd2001;

int main()
    {
    // Parse an XSD duration to create a TimeSpan object.
    // This is a duration of 2 years, 3 months, 9 days, 12 hours,
    // 35 minutes, 20 seconds, and 10 milliseconds.
    String* xsdDuration = S"P2Y3M9DT12H35M20.0100000S";
    TimeSpan timeSpan = SoapDuration::Parse(xsdDuration);
    Console::WriteLine(S"The time span contains {0} days.",
        __box(timeSpan.Days));
    Console::WriteLine(S"The time span contains {0} hours.",
        __box(timeSpan.Hours));
    Console::WriteLine(S"The time span contains {0} minutes.",
        __box(timeSpan.Minutes));
    Console::WriteLine(S"The time span contains {0} seconds.", __box(timeSpan.Seconds));

    // Serialize a TimeSpan object as an XSD duration string.
    // This object represents a time span of 399 days, 12 hours,
    // 35 minutes, 20 seconds, and 10 milliseconds.
    TimeSpan duration = TimeSpan(399, 12, 35, 20, 10);
    Console::WriteLine(S"The duration in XSD format is {0}.",
        SoapDuration::ToString(duration));

    // Print the XSD type string of the SoapDuration class.
    Console::WriteLine(S"The XSD type of SoapDuration is {0}.",
        SoapDuration::XsdType);
}

System.Object
  System.Runtime.Remoting.Metadata.W3cXsd2001.SoapDuration

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

Community Additions

Show: