2016-07-25 116 views
1

我正在试图找到一种方法来获得自动计算两天之间的天数。在vb.net中自动计算天数

例如:如果我创建一个条目,比如说1st July, 2016上的ID是500并保存它。 同样,在15天后,即我打开了15th July, 2016上的ID 500,值字段应显示为“15”,包括7月15日。同样,如果我打开20th July, 2016上的ID,它应该显示“20”。

我试着用datediff功能,但它不是自动计算。

Me.txtndays.Text = DateDiff(DateInterval.Day, Now, metxtdtenter.Text) 

任何帮助真的很感激。

谢谢你提前

+4

'我试着用DATEDIFF功能,但它不是自动calculating.' - 定义“自动计算”。 –

+1

2016年7月1日来自哪里?这是与Id一起保存的值吗?那是在'metxtdtenter'里面吗?为什么是文字?如果你想让日期像日期一样使用'DateTime'类型。 – Plutonix

+1

[DateDiff](https://msdn.microsoft.com/en-us/library/b5xbyt6f(v = vs.90).aspx)不会将字符串作为参数,您应该与正确的日期进行比较。 –

回答

3

那么从7月1日到7月15日实际上有14天。

要计算这个,你可以从另一个减去一个日期,这将导致TimeSpan然后找到TotalDays这样的:

Dim originalDate As Date = #2016-07-01# 'get this value from the database 
    Dim testDate As Date = #2016-07-15# 'this is the date you want to compare to. Use DateTime.Now to use the current date 
    Dim daysBetween = (testDate - originalDate).TotalDays '14 
+0

日期文字需要在不变的文化形式'#7/1/2016#' – Plutonix

+0

@Plutonix - 不再是他们不 –

+0

是VS2015的事情吗?那很棒。我一直认为这种形式更有意义。 – Plutonix