asp.net сравнить валидатор дата воскресенье - PullRequest
0 голосов
/ 17 октября 2011

Я разрабатываю веб-приложение с asp.net и c #. У меня есть текстовое поле на моей странице, и оно вводит простую дату. Я использовал CompareValidator для проверки этого текстового поля, но когда пользователь вводит определенную дату (3-е воскресенье октября, например: 16.10.2011, 17.10.2010 или 18.10.2009), средство проверки сравнения говорит, что это Недействительная дата. Кто-нибудь знает, что с ним происходит?

Мой валидатор сравнения:

<asp:CompareValidator ID="cvDataProtocolo" runat="server" 
     ControlToValidate="txtDataProtocolo" Display="Dynamic" 
     ErrorMessage="Data Inválida" 
     SetFocusOnError="True" Type="Date" Operator="DataTypeCheck" 
     ValidationGroup="vProtocolo"></asp:CompareValidator>

Правки -----

Да, я написал 16.10.2011, чтобы понять, что моя культура настроена на pt-BR (португальская Бразилия), а в Бразилии мы используем формат dd / MM / yyyy, а CompareValidator недействителен 16/10 /. 2011 (в формате дд / мм / гггг) в качестве допустимого формата. Я установил свою культуру в моей веб-форме:

protected override void InitializeCulture() {
    Page.Culture = CultureInfo.GetCultureInfoByIetfLanguageTag("pt-BR").ToString();
    Page.UICulture = CultureInfo.GetCultureInfoByIetfLanguageTag("pt-BR").ToString();

    System.Threading.Thread.CurrentThread.CurrentCulture = New CultureInfo("pt-BR");
    System.Threading.Thread.CurrentThread.CurrentUICulture = New CultureInfo("pt-BR");
}

Спасибо

Ответы [ 2 ]

1 голос
/ 17 октября 2011

Убедитесь, что вы правильно установили свою культуру, поскольку (например, в Великобритании) 16.10.2011 означает 10-й день 16-го месяца, который будет недопустимой датой.

См. Здесь длядополнительная информация: http://msdn.microsoft.com/en-us/library/bz9tc508.aspx

0 голосов
/ 17 октября 2011

CompareValidator использует CultureInfo текущего потока, чтобы получить формат даты. Если вы хотите использовать определенный формат записи и даты, добавьте эту декларацию на свою страницу:

<%@ Page culture="your culture" %> 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...