System.Xml.Xsl.Runtime.XsltFunctions.MSUtc C# (CSharp) Method

MSUtc() public static method

public static MSUtc ( string dateTime ) : string
dateTime string
return string
        public static string MSUtc(string dateTime)
        {
            XsdDateTime xdt;
            DateTime dt;
            try
            {
                if (!XsdDateTime.TryParse(dateTime, XsdDateTimeFlags.AllXsd | XsdDateTimeFlags.XdrDateTime | XsdDateTimeFlags.XdrTimeNoTz, out xdt))
                {
                    return string.Empty;
                }
                dt = xdt.ToZulu();
            }
            catch (ArgumentException)
            { // Operations with DateTime can throw this exception eventualy
                return string.Empty;
            }
            char[] text = "----------T00:00:00.000".ToCharArray();
            //            "YYYY-MM-DDTHH:NN:SS.III"
            //             0         1         2
            //             01234567890123456789012
            switch (xdt.TypeCode)
            {
                case XmlTypeCode.DateTime:
                    PrintDate(text, dt);
                    PrintTime(text, dt);
                    break;
                case XmlTypeCode.Time:
                    PrintTime(text, dt);
                    break;
                case XmlTypeCode.Date:
                    PrintDate(text, dt);
                    break;
                case XmlTypeCode.GYearMonth:
                    PrintYear(text, dt.Year);
                    ShortToCharArray(text, 5, dt.Month);
                    break;
                case XmlTypeCode.GYear:
                    PrintYear(text, dt.Year);
                    break;
                case XmlTypeCode.GMonthDay:
                    ShortToCharArray(text, 5, dt.Month);
                    ShortToCharArray(text, 8, dt.Day);
                    break;
                case XmlTypeCode.GDay:
                    ShortToCharArray(text, 8, dt.Day);
                    break;
                case XmlTypeCode.GMonth:
                    ShortToCharArray(text, 5, dt.Month);
                    break;
            }
            return new String(text);
        }