我正在一个框架中生成代码。日期和时间字段的属性之一是其格式。它必须是DateTime.ToString()
接受的格式,例如dd/MM/yyyy
。如何验证应用程序中键入的掩码是否为.ToString()
的有效日期时间模式?
最佳答案
第一个变体使用System.Globalization。二是脏。
static bool ValidateFormat(string customFormat)
{
return !String.IsNullOrWhiteSpace(customFormat) && customFormat.Length > 1 && DateTimeFormatInfo.CurrentInfo.GetAllDateTimePatterns().Contains(customFormat);
}
static bool ValidateFormat(string customFormat)
{
try
{
DateTime.Now.ToString(customFormat);
return true;
}
catch
{
return false;
}
}