计算期望加倍的日期

时间:2016-07-08 10:18:33

标签: c# asp.net

我想简单地减去两个日期。这可能是一种混乱的方式。它说即使它也无法转换为双倍。

DateTime daysPlus14days = _dal.getOptinDate(new Guid(_myuser.id.ToString())).AddDays(14);
DateTime currentDate = DateTime.Now;
DateTime timeLeft = (daysPlus14days - currentDate).TotalDays

这只是基本上转到db并获取他们在那里创建帐户的日期。只是想知道还有多少天他们有14天的时间点击按钮,否则它就会消失。

public DateTime getOptinDate(Guid id)
{
    var q = _dal.portalEntities.tblPortalUsers.Where(a => a.id == id).FirstOrDefault();
    return (DateTime)q.optinDateStart;          
}

2 个答案:

答案 0 :(得分:2)

只需更改此行:

double timeLeft = (daysPlus14days - currentDate).TotalDays;

TotalDays返回双倍而非DateTime

答案 1 :(得分:0)

请参阅此链接https://msdn.microsoft.com/en-us/library/system.timespan.totaldays(v=vs.110).aspx

System.DateTime date1 = new System.DateTime(1996, 6, 3, 22, 15, 0);
System.DateTime date2 = new System.DateTime(1996, 12, 6, 13, 2, 0);
System.TimeSpan diff1 = date2.Subtract(date1);
double totaldays = diff1.TotalDays;