2012-05-04 92 views
1

我对它有一个TextBox和Extender AjaxCalander。在选择日期时,它在TextBox中的工作状态很好,只显示月份和年份。我的代码如下datetime(month + year)与字符串的比较

<asp:TextBox ID="txtCardExpiry" runat="server" Width="200px" /><span> MMYY</span> 
<ajaxToolkit:CalendarExtender runat="server" Format="MMyy" TargetControlID="txtCardExpiry" /> 

我想我现在该怎么比较txtCardExpiry.Text与今天月份和年份只有

现在即时通讯使用

int dtNowYear = Convert.ToInt16(DateTime.Now.Year.ToString().Substring(2, 2)); 
      int dtNowMonth = Convert.ToInt16(DateTime.Now.Month.ToString()); 
      int dtExpYear = Convert.ToInt16(txtCardExpiry.Text.Substring(2, 2)); 
      int dtExpMonth = Convert.ToInt16(txtCardExpiry.Text.Substring(0, 2)); 

      if (dtNowYear == dtExpYear && dtNowMonth > dtExpMonth) 
      { 
       lblMessage.Attributes.Add("class", "lblMessageError"); 
       lblMessage.Text = 
        "Credit Card expiry month and year cannot be less than todays month and year or your Credit Card has expired"; 
       return false; 
      } 
       else if (dtNowYear > dtExpYear) 
       { 
        if (dtNowMonth > dtExpMonth) 
        { 
         lblMessage.Attributes.Add("class", "lblMessageError"); 
         lblMessage.Text = 
          "Credit Card expiry month and year cannot be less than todays month and year or your Credit Card has expired"; 
         return false; 
        } 
        return false; 
       } 
+0

只是与asp.net –

回答

6
来验证,如果信用卡未过期

尝试

txtCardExpiry.Text.Compare(DateTime.Now.ToString("MMyyyy")) 

Custom Date and Time Format Strings 必须说,MSDN非常有帮助。

+0

我怎么能只比较MMYY格式与datetime.now.tostring(“MMYY”) – skhurams

+2

只是'Datetime.now.tostring(“MMyy”)',** yy **是小写。 – fankt