C# 发票日期<;发票日期。添加月份(-)
我有一份声明C# 发票日期<;发票日期。添加月份(-),c#,asp.net,datetime,if-statement,C#,Asp.net,Datetime,If Statement,我有一份声明 if (lastInvoice.Invoice_Date < DateTime.Now.AddMonths(-12)) if(lastInvoice.Invoice\u日期
if (lastInvoice.Invoice_Date < DateTime.Now.AddMonths(-12))
if(lastInvoice.Invoice\u日期
这将检查发票上的日期,如果是12个月前,即2012年1月之前的任何日期,请继续代码
因此,我想说的是从发票上的日期算起的6个月,而不是dateTime.Now.AddMonths(-12))
我试过
if (lastInvoice.Invoice_Date < lastInvoice.Invoice_Date.AddMonths(-0-worksite.Number_of_Months))
if(lastInvoice.Invoice\u日期
也尝试了不使用(-0)的情况,只是将其作为(0)使用,但需要-作为表达式。
不管怎么说,它没有返回它应该是什么。我做错了什么?
lastInvoice.Invoice\u Date
永远不会小于lastInvoice.Invoice\u Date.AddMonths(-anything)
这应该适合您:
if (lastInvoice.Invoice_Date < DateTime.Now.AddMonths(-worksite.Number_of_Months))
if(lastInvoice.Invoice\u Date
如果这不是正确答案,我将使用调试器确认worksite.Number of Months实际上是您期望的结果。
lastInvoice.Invoice\u Date
永远不会小于lastInvoice.Invoice\u Date.AddMonths(-任意)
if (lastInvoice.Invoice_Date < lastInvoice.Invoice_Date.AddMonths(-0-worksite.Number_of_Months))
这应该适合您:
if (lastInvoice.Invoice_Date < DateTime.Now.AddMonths(-worksite.Number_of_Months))
if(lastInvoice.Invoice\u Date
如果答案不正确,我将使用调试器确认worksite.Number of of the Mounts实际上是您期望的结果。If(lastInvoice.Invoice of the Dateif (lastInvoice.Invoice_Date < lastInvoice.Invoice_Date.AddMonths(-0-worksite.Number_of_Months))
您正在将发票日期与自身进行比较。您可能希望与日期时间进行比较。现在改为?如果(lastInvoice.Invoice\u Date
您正在将发票日期与自身进行比较。您可能希望与日期时间进行比较。现在改为?确保工作站点。返回类型为整数,
否则请使用-Convert.ToInt32(工作站点.月数)
并将其与DateTime.Now()进行比较,确保工作站点.月数
返回类型为整数,
否则请使用-Convert.ToInt32(工作站点.月数)
,您应该将其与日期时间进行比较。现在()
根据我对上述评论的回答,我认为您需要:
if (DateTime.Now > lastInvoice.Invoice_Date.AddMonths(6))
或者更准确地说:
if (DateTime.Now > lastInvoice.Invoice_Date.AddMonths(worksite.Number_of_Months))
根据对我上述评论的回答,我认为您需要:
if (DateTime.Now > lastInvoice.Invoice_Date.AddMonths(6))
或者更准确地说:
if (DateTime.Now > lastInvoice.Invoice_Date.AddMonths(worksite.Number_of_Months))
所以你想换个方向?如果今天比发票上的日期晚6个月以上,是否继续?返回的是什么?你有没有在调试器中浏览过代码以查看发生了什么?所以你想反过来看?如果今天比发票上的日期晚6个月以上,是否继续?返回的是什么?您是否已在调试器中遍历代码以查看发生了什么?