Je travaille sur asp.net et je veux prendre DOB de l'utilisateur dans une zone de texte, comment puis-je valider la boîte de test pour feb et année bissextile considération.Je veux aussi que la date soit entrée dans DD/MM/AAAADate de naissance validation
Répondre
Essayez ceci -
// <summary>
// Determine if Date String is an actual date
// Date format = MM/DD/YYYY
// </summary>
// <param name="date"></param>
// <returns></returns>
private bool ValidateDate(string date)
{
try
{
// for US, alter to suit if splitting on hyphen, comma, etc.
string[] dateParts = date.Split('/');
// create new date from the parts; if this does not fail
// the method will return true and the date is valid
DateTime testDate = new
DateTime(Convert.ToInt32(dateParts[2]),
Convert.ToInt32(dateParts[0]),
Convert.ToInt32(dateParts[1]));
return true;
}
catch
{
// if a test date cannot be created, the
// method will return false
return false;
}
}
Essayez d'utiliser validateur d'expression régulière dans ASP.NET .. Quelque chose comme ceci:
<asp:RegularExpressionValidator ID="RegExpVal1" runat="server" ControlToValidate="{Here Goes your Text Box}" ErrorMessage="DOB has to be in dd/mm/yyyy format" ValidationExpression="^([1-9]0[1-9][12][0-9]3[01])[- /.]([1-9]0[1-9]1[012])[- /.][0-9]{4}$" >*</asp:RegularExpressionValidator>
EDIT: Je missunderstood votre question (TNX à @rob). Alors peut-être que vous pouvez utiliser le validateur personnalisé. Quelque chose comme ceci:
<asp:CustomValidator ID="MyValidator" runat="server"
ErrorMessage="Invalid date!"
ControlToValidate="tbDOB"
OnServerValidate="MyValidator_ServerValidate">
</asp:CustomValidator>
Ajoutez ci-dessus à votre contrôle d'utilisateur DateTime. Et maintenant, pour vérifier la date de validité:
public partial class DateTime_EditField : System.Web.DynamicData.FieldTemplateUserControl
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void MyValidator_ServerValidate(object source, ServerValidateEventArgs args)
{
DateTime temp;
String textDate = tbDOB.Text;
if (DateTime.TryParse(textDate, out temp))
{
args.IsValid = true;
}
else
{
args.IsValid = false;
}
}
}
Vous pouvez utiliser DateTime.TryParseExact
:
string dateString = "22/07/1876";
DateTime dateOut;
if ((DateTime.TryParseExact(dateString, "dd/MM/yyyy",
new CultureInfo("en-US"),
DateTimeStyles.None,
out dateOut)))
Console.WriteLine("Date is valid: {0}", dateOut.ToString());
else
Console.WriteLine("Date string {0} is invalid.", dateString);
La meilleure chose à faire est d'utiliser la méthode DateTime.ParseDate:
var date = "01/10/1981";
var parsedDate = new DateTime();
if (DateTime.TryParse(date, out parsedDate))
{
// Date is valid and is now in "date"
}
else
{
// Date is NOT valid/parseable
}
Ces vali Le code de dation fonctionne également.
<asp:CompareValidator ErrorMessage="(mm/dd/yyyy)" Display="Dynamic" ID="valcDate" ControlToValidate="txtDate" Operator="DataTypeCheck" Type="Date" runat="server"></asp:CompareValidator>
<asp:RangeValidator ID="valrDate" runat="server" ControlToValidate="txtDate" MinimumValue="12/31/1950" MaximumValue="1/1/2100" Type="Date" text="Invalid Date" Display="Dynamic"/>
Je ne comprends pas pourquoi vous tous essayer de réinventer la roue, utiliser une expression régulière pour valider avec le format que vous voulez que la date soit dans http://regexlib.com/Search.aspx?k=date&c=-1&m=5&ps=50 a attribuer une grande regex qui prend des années bissextiles et bientôt.
- 1. ExtJS: demander date de naissance
- 2. calibrer selon la date de naissance donnée
- 3. forme simple date de naissance dans jsf
- 4. Comment séparer l'année d'une date de naissance?
- 5. Date de naissance multiple Drupal sélectionnez
- 6. valider 3 champs de texte représentant la date de naissance
- 7. Obtenir l'âge automatiquement lorsqu'il est donné Date de naissance
- 8. Valider la date de naissance et vérifier l'âge
- 9. R haut graphique par rapport à la date de naissance
- 10. date validation
- 11. Javascript Date de validation
- 12. Date de validation
- 13. Date largeur Validation rompu jQuery Validation plug-in
- 14. valider que Date de naissance ne doit pas être supérieure à la date actuelle
- 15. validation de date dans ExtJS
- 16. Date de validation en MySQL
- 17. Validation de date MVC ClientSide
- 18. Date de validation dans WPF
- 19. jquery date validation
- 20. javascript validation Date
- 21. Validation pour la date
- 22. Date de validation à l'aide de la validation JQuery
- 23. XSD Validation de date ou pas de date
- 24. Oracle Calcul de l'âge à partir de Date de naissance et aujourd'hui
- 25. Date de validation de l'heure dans vb.net
- 26. jQuery/JavaScript Validation de formulaire de date
- 27. problème de validation de la date jquery
- 28. Comment puis-je obtenir des informations sur la date de naissance de l'application Facebook
- 29. Calcul de l'âge basé sur la date de naissance en SQL et C#?
- 30. Affichage de la date de naissance dans Java en utilisant Util Util
Il semble inélégant de lancer une exception quand il existe des méthodes pour tester les chaînes de date. – RedFilter