总结判断两种格式 2012/11/1  或2012-11-1 两种都是正确的日期格式。函数如下:      

首先:

using System.Text.RegularExpressions;

其次(判断函数):

//public bool isDateTime(string dateStr)
        //{
        //    bool _isDate = false;

        //    string matchStr = "";
        //    string DataString = "";
        //    matchStr += @"^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$ ";
        //    DataString += @"^((((1[6-9]|[2-9]\d)\d{2})/(0?[13578]|1[02])/(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})/(0?[13456789]|1[012])/(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})/0?2/(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))/0?2/29/))$ ";
        //    RegexOptions option = (RegexOptions.IgnoreCase | (RegexOptions.Multiline | RegexOptions.IgnorePatternWhitespace));
        //    if (Regex.IsMatch(dateStr, matchStr, option) || Regex.IsMatch(dateStr, DataString, option))
        //        _isDate = true;
        //    else
        //        _isDate = false;
        //    return _isDate;
        //}
 
在次在程序里(调用):
 if ( isDateTime(strDate)==true)
            {
                DailyDate = DateTime.Parse(strDate);
            }
            else
            {
                Response.Write("<script>alert('不是有效的日期/格式,请输正确输入!');window.location.href='ProductStockDaily.aspx'</script>");
            }