Używam wtyczki datepicker jQuery w aplikacji intranetowej .NET ASP MVC3. Użytkownik korzystający z aplikacji ma biura w różnych krajach i różnych lokalizacjach. Właśnie dlatego chciałem zintegrować Thread.CurrentThread.CurrentCulture.DateTimeFormat z jQuery datepicker plugin. Moje pierwsze rozwiązanie było stworzenie metody rozszerzenie pomocnika:jQuery datepicker's dateFormat - jak zintegrować z bieżącą kulturą .NET DateTimeFormat
public static string jQueryDatePickerFormat(this HtmlHelper helper)
{
return Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortDatePattern;
}
i ustawić dateformat opcję w javascript tak:
$("#StartDate").datepicker({ dateFormat: '@Html.jQueryDatePickerFormat()' });
Wkrótce zdałem sobie sprawę, że dateformat opcja datepicker obsługuje formaty, które mają różne implementacja z formatu w .NET.
Na przykład: Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortDatePattern na pl-PL powraca rrrr MM-dd (to format daty jako 2010-01-01), podczas gdy w tym samym formacie, w Datepicker sformatuje tę samą datę, co 20102010 styczeń 01. I szybko dostosować moje metody pomocnika i zastosowano szybkie ustalenie Replace ("yyyy", "YY") zastąpić ("MM", "mm").
public static string jQueryDatePickerFormat(this HtmlHelper helper)
{
return Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortDatePattern.Replace("yyyy", "yy").Replace("MM", "mm");
}
I działa, ale czekam na moment, kiedy pojawią się inne problemy. Czy istnieje prosty sposób implementacji ustawień regionalnych .NET do wtyczki datePicker jQuery?
Dzięki Paweł
Witam, czy rozwiązałeś swoje problem? – torm