2015-02-26 6 views
0

Я кодирую интернет-приложение MVC 5 и хочу преобразовать DateTime, который будет отображаться как LocalTime, где у меня есть язык. Это для сайта Azure.Преобразование DateTime с указанным языком

Вот мой код:

DateTime dateTimeUtcNow = DateTime.UtcNow; 
DateTime convertedDate = DateTime.SpecifyKind(dateTimeUtcNow, DateTimeKind.Utc); 
DateTime dateTimeLocalTime = convertedDate.ToLocalTime(); 
return dateTimeLocalTime.ToString(new CultureInfo("en-NZ")); 

Выход из кода выше точно такой же выход, как если бы я вернуть DateTime в UTC без какой-либо языковой культуры, указанной.

Как можно преобразовать DateTime в UTC для местного времени, когда у меня есть язык культуры?

Заранее спасибо.

ответ

0

Вы можете использовать второй аргумент функции toString и использовать любой язык/культуру вам нужно ...

Вы можете использовать формат "d" вместо ToShortDateString согласно MSDN ...

Так в основном что-то вроде этого, чтобы вернуться в Newz ealand English:

CultureInfo enAU = new CultureInfo("en-NZ"); 
dt.ToString("d", enAU); 

вы можете модифицировать свой метод, чтобы включить язык и культуру в качестве параметра

public static string ConvertDateTimeToDate(string dateTimeString, String langCulture) { 

    CultureInfo culture = new CultureInfo(langCulture); 
    DateTime dt = DateTime.MinValue; 

    if (DateTime.TryParse(dateTimeString, out dt)) 
    { 
     return dt.ToString("d",culture); 
    } 
    return dateTimeString; 
    } 

Вы также можете to look at the overloadedtryParse метод, если вам нужно разобрать строку против конкретного языка/культуры ...

 Смежные вопросы

  • Нет связанных вопросов^_^