Вы хотите сказать, что хотите, чтобы он был успешным только тогда, когда он соответствует точному формату?Затем используйте DateTime.TryParseExact
:). Обратите внимание, что разрешать и «10.31.12», и «31.10.12» плохая идея. В противном случае, например, что означает «03.04.12»?Откуда поступают ваши данные - пользователь или другая система?Если это другая система, вам, вероятно, следует использовать инвариантную культуру и строку пользовательского формата.Если это от пользователя, это сложнее ... вы должны соответствовать их культуре, а затем выработать некоторое подмножество форматов для использования.