I am using Datetime.TryParse method to check the valid datetime. the input date string would be any string data. but is returning false as the specify date in invalid.
DateTime fromDateValue; if (DateTime.TryParse("15/07/2012", out fromDateValue)) { //do for valid date } else { //do for in-valid date } Edit: I missed. I need to check the valid date with time as "15/07/2012 12:00:00".
Any suggestions are welcome.
33 Answers
You could use the TryParseExact method which allows you to pass a collection of possible formats that you want to support. The TryParse method is culture dependent so be very careful if you decide to use it.
So for example:
DateTime fromDateValue; string s = "15/07/2012"; var formats = new[] { "dd/MM/yyyy", "yyyy-MM-dd" }; if (DateTime.TryParseExact(s, formats, CultureInfo.InvariantCulture, DateTimeStyles.None, out fromDateValue)) { // do for valid date } else { // do for invalid date } 0You should be using TryParseExact as you seem to have the format fixed in your case.
Something like can also work for you
DateTime.ParseExact([yourdatehere], new[] { "dd/MM/yyyy", "dd/M/yyyy" }, CultureInfo.InvariantCulture, DateTimeStyles.None); As the others said, you can use TryParseExact.
For more informations and the use with the time, you can check the MSDN Documentation