我已经做了很多搜索,不能完全找到我想要完成的事情。当使用Linq - 实体时,我得到了UTC时间与数据库中某个值应该离开的估计值之间的差异。我认为从UTC减去的ETO的减法运行正常,但是我需要将其转换为分钟。当前的减法(由于它是一个日期时间)正在以小时和分钟显示,但我需要显示为240而不是两点两小时的差异。Linq转换时间从几小时到几分钟?
问题是,当我尝试将结果除以60或尝试使用.ToString(@“mm”)格式化时出现错误。当我尝试在1440(24小时内分钟)时出现错误时,出现错误,无法将system.TimeSpan转换为Double。如果我尝试不转换为double,则会出现“*”的操作数无法应用于TimeSpan的错误。试图将它设置为.ToString(@“mm”)它告诉我没有.ToString的重载。
这是我对查询的选择。目前我的MinutesLeft显示为02:32:38.7914913 2小时32分38秒。
select new
{
EstimateOut=f.ESTIMATED_OUT,
UTC=DateTime.UtcNow,
MinutesLeft=(DateTime.UtcNow - f.ESTIMATED_OUT),
//MinutesLeft=(double)(DateTime.Now - f.ESTIMATED_OUT)*1440,
//MinutesLeft=(DateTime.Now - f.ESTIMATED_OUT)*1440,
}).ToList();
我给我一个错误说'TimeSpan?'不包含'TotalMinutes'的定义。当我在TotalMinutes上进行快速搜索时,它看起来像大多数人都在使用Lamda,但我使用的查询类似于(从Table中的f),然后执行select new并指定我的属性。 – Caverman
为您编辑 –
谢谢!有点圆润,它完美的作品。当试图检查像你显示的空值可能是因为它在选择分配给对象时出现错误。我会更多地研究一下,看看我能否实现它。 – Caverman