2015-10-06 5 views
1

Я преобразовал формат даты и времени на основе области клиента. Я сделал это с ниже код, используя C#Как установить шаблон даты в jquery datepicker

public CultureInfo GetDateFormat() 
    { 
     var _CultureInfo = new CultureInfo(1043); 
     return _CultureInfo; 
    } 

    public string GetFormattedDateString(string _DateToFormat) 
    { 
     string _tempDate = string.Empty; 

     if (!string.IsNullOrEmpty(_DateToFormat)) 
     { 
      _tempDate = DateTime.Parse(_DateToFormat).ToString(GetDateFormat().DateTimeFormat.ShortDatePattern); 
     } 
     return _tempDate; 
    } 

это работает отлично. Но если я использую тот же подход в jQuery datepicker, он дает другой формат.

Ex: В c#

10-10-2015

в jquery

10/10/2015

Ниже приведен код JQuery изменение формата,

public string GetDateFormat() 
{ 
    var pattern = new CultureInfo(1043).DateTimeFormat.ShortDatePattern; 

    return pattern; 
} 

@Html.DatePicker(new { 
        name = "filter.StartDate", 
        value = Model.Filter.StartDate, 
        data_bind = "value: StartDate", 
        data_datepicker_options = "{dateFormat: '" + GetDateFormat() + "'}" 
}) 

выше - код бритвы, который создает сборщик даты.

Есть ли способ получить такой же формат даты в C# и datepicker?

+0

Вы пробовали явное 'dateFormat: 'dd-mm-yy''? –

ответ

0

В вашем DatePicker вы можете добавить этот

dateFormat: 'dd-MM-yyyy' 

изменить формат

или в вашей модели вы можете добавить этот

[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd-MM-yyyy}")] 

на нем

- См. Также это post. Его очень полезно для форматов даты в бритве.

+0

На самом деле я не могу жестко кодировать формат, как вы упомянули, потому что формат может измениться в соответствии с культурой пользователя. Я получаю пользовательскую культуру при протоколировании и соответствующим образом изменяю формат даты. – user3649433

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