Как привести эту дату и сохранить в базе данных - PullRequest
2 голосов
/ 23 мая 2011

08:15:16 April 1, 2010 PDT Мне нужно сохранить это в DateTime в базе данных MSSQL, но я не могу преобразовать это в C #. Может ли кто-нибудь помочь мне сыграть это? И что, черт возьми, это «PDT»?

Ответы [ 2 ]

2 голосов
/ 23 мая 2011

Это сообщение относится к Parse DateTime с часовым поясом в форме PST / CEST / UTC / etc

Я не уверен, как перейти из альфа-часового пояса в числовой, но после того, как вы это сделаете, вы можете

DateTime myDate = Convert.ToDateTime("Thu, 18 Mar 2004 14:52:56-07:00");

Обновление: Эта ссылка, очевидно, содержит код для преобразования смещения "PDT" в GMT. http://bytes.com/topic/c-sharp/answers/214648-how-do-i-parse-date-w-time-zone Также ознакомьтесь с классом TimeZoneInfo http://msdn.microsoft.com/en-us/library/system.timezoneinfo.aspx

1 голос
/ 22 сентября 2011

Кажется, что код в этом посте работает нормально: http://www.codeillustrator.com/2010/03/converting-paypal-paymentdate-to-net.html

using System;
using System.Globalization;

public static class PayPalTransaction
{
    public static DateTime ConvertPayPalDateTime(string payPalDateTime)
    {
    // accept a few different date formats because of PST/PDT timezone and slight month difference in sandbox vs. prod.
        string[] dateFormats = { "HH:mm:ss MMM dd, yyyy PST", "HH:mm:ss MMM. dd, yyyy PST", "HH:mm:ss MMM dd, yyyy PDT", "HH:mm:ss MMM. dd, yyyy PDT" };
        DateTime outputDateTime;

        DateTime.TryParseExact(payPalDateTime, dateFormats, new CultureInfo("en-US"), DateTimeStyles.None, out outputDateTime);

        // convert to local timezone
        outputDateTime = outputDateTime.AddHours(3);

        return outputDateTime;
    }
}

(ответ на этот вопрос в перекрестном сообщении: Как мне конвертировать ЧЧ в Paypal: MM: SS DD Mmm(.) ГГГГ PST / PDT для C # UTC DateTime? )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...