2010-07-26 4 views
5

J'utilise RangeValidator pour valider la saisie de date dans la zone de texte et son fonctionnement avec le format de date par défaut mais maintenant je veux le format de date dans "jj/MM/aaaa" mais son excption génératrice avec ce format de date. s'il vous plaît me fournir une solution mon code:Format de date dans RangeValidator

en page ASPX:

<asp:TextBox ID="txtrequiredby" runat="server" ></asp:TextBox > 
<cc1:CalendarExtender ID="txtrequiredby_CalendarExtender" Format="dd/MM/yyyy" 
runat="server" Enabled="True" TargetControlID="txtrequiredby" > 
</cc1:CalendarExtender > 

<asp:RangeValidator ID="rvreqby" runat="server" ErrorMessage="Required By Date 
Greater Than or Equal to current date" ControlToValidate="txtrequiredby" 
Display="Dynamic" Type="Date" ></asp:RangeValidator > 

dans codebehind:

rvreqby.MinimumValue = clsGeneral.FromSqlDate(DateTime.Now); 
rvreqby.MaximumValue = clsGeneral.FromSqlDate(DateTime.Now.AddYears(200)); 

public static string FromSqlDate(DateTime date) 
{ 
    return date.ToString("dd/MM/yyyy"); 
} 

Répondre

7

MinimumValue & MaximumValue doivent être mis dans l'événement Page_PreRender et semblent exiger la date format comme "jj-MM-aa" ... voir le dernier message sur Rangevalidator Min Max Value error

protected void Page_PreRender(object sender, EventArgs e) 
{ 
    RangeValidator1.MinimumValue = DateTime.Now.Date.ToString("dd-MM-yy"); 
    RangeValidator1.MaximumValue = DateTime.Now.Date.AddYears(90).ToString("dd-MM-yy"); 
} 
2

Format du MinimumValue et MaximumValue devrait être yyyy/MM/dd

Consultez la documentation ici: https://msdn.microsoft.com/en-us/library/ydez7ad7(v=vs.110).aspx

+0

pour l'application que je vous écris, je veux le format de date à 'MM/dd/yyyy' il devrait donc être ce qu'il doit être pour votre application. Et votre lien est rompu – Malachi

+0

@Malachi: Non. MinimimValue doit toujours être au format aaaa/MM/jj. Le validateur utilise ce format pour valider. C'est indépendant de la culture. –

+0

Où est-ce que ça veut dire ça? l'article auquel vous avez lié ne dit rien sur les plages de dates. – Malachi