2013-05-29 41 views
0

我正在尝试注册一个日期,以表示用户支付的金额和开始日期。根据付款金额注册日期

我有3个文本框,PaymentAmount,StartDay(用户支付的日期)和EndDay(支付到期时)。

如果PaymentAmount(decimal)是1 $,StartDay是01.01.2013(格式是dd.mm.yyyy),那么EndDay应该是01.02.2013。如果PaymentAmount为5 $,StarDay为01.01.2013,则EndDay为01.05.2013。但是如果日期是01.09.2013并且PayemtAmount是5 $,那么EndDay应该是01.02.2014。

我还没有尝试过任何东西,我的意思是...有可能以某种方式汇总PaymentAmount和StartDay?

+2

这是你在找什么:'DateTime.AddDays(double value)'(或AddMonths)? – Artemix

+2

您只需为每个$ 1的付款金额添加1个月?我想你想'DateTime.AddMonths'。 –

+0

我不知道存在:\。感谢你们。欢呼:) – Etrit

回答

3

如果你没有担心十进制值这应该工作:

 int paymentAmmount = (int)Math.Floor(5.24); 

     DateTime startDate = DateTime.Now; 

     DateTime endDate = startDate.AddMonths(paymentAmmount); 
3

如果你想1个月每次支付的每$添加,那么这将做的工作:

string textboxvalue = textBox1.Text; // put textbox value here 
decimal decAmount; 
if (decimal.TryParse(textboxvalue, out decAmount) 
{ 
    int amount = (int)Math.Floor(decAmount); 
    DateTime transactionDate = DateTime.Today; 

    DateTime expiryDate = transactionDate.AddMonths(amount); 
}