今天测试提了一个BUG,说是消息提醒的时机不对,设置的提前2小时,还没到就提醒了。

看了下代码

(m.ExpectReceiveTime - DateTime.Now).Minutes < (pModel.ErtDelayPrevMinutes == - ?  : pModel.ErtDelayPrevMinutes))
                          

执行

(m.ExpectReceiveTime - DateTime.Now).Minutes

结果是55,按道理应该是170

执行

(m.ExpectReceiveTime - DateTime.Now).TotalMinutes

结果是169.89568451

最后把代码修改为

(Convert.ToDecimal((m.ExpectReceiveTime - DateTime.Now).TotalMinutes) < (pModel.ErtDelayPrevMinutes == - ?  : pModel.ErtDelayPrevMinutes))

BUG解决

总结:

1.Minutes的计算只限于分钟部分,类型Int,(-59到59)

https://msdn.microsoft.com/zh-cn/library/vs/alm/system.timespan.minutes/css

2.TotalMinutes的计算是整个时间的分钟数,类型double。

https://msdn.microsoft.com/zh-cn/library/vs/alm/system.timespan.totalminutes/css

补充:

Days;              //天部分 Hours; //小时部分

Milliseconds;      //毫秒部分

Minutes;           //分部分

Seconds;           //秒部分

Ticks;             //Tick 总数

TotalDays;         //总天数

TotalHours;        //总小时数

TotalMilliseconds; //总毫秒数

TotalMinutes;      //总分钟数

TotalSeconds;      //总秒数

Minutes和TotalMinutes的区别的更多相关文章

  1. C# 计算时间差 用timespan函数

    TimeSpan 结构  表示一个时间间隔. 命名空间:System 程序集:mscorlib(在 mscorlib.dll 中) 1.DateTime值类型代表了一个从公元0001年1月1日0点0分 ...

  2. winform timespan 两个时间的间隔(差) 分类: WinForm 2014-04-15 10:14 419人阅读 评论(0) 收藏

    TimeSpan 结构  表示一个时间间隔. 先举一个小例子:(计算两个日期相差的天数) 代码如下: DateTime dt = DateTime.Now.ToShortDateString(yyyy ...

  3. [转载]C# TimeSpan 计算时间差(时间间隔)

    TimeSpan 结构  表示一个时间间隔. 命名空间:System 程序集:mscorlib(在 mscorlib.dll 中) 说明: 1.DateTime值类型代表了一个从公元0001年1月1日 ...

  4. C#如何测试代码运行时间

    1.System.Diagnostics.Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); // 开始监视代码运行时间 // 需要测试 ...

  5. c#调用word com组件 替换书签套打

    安装office2007,添加com引用Microsoft Word12.0 Object Library和Microsoft Office12.0 Object Library using Syst ...

  6. 转:TimeSpan的用法

    转:http://www.cnblogs.com/shuang121/archive/2011/03/03/1969583.html 举例:时间增加一天:DateTime.Parse(txt_Date ...

  7. javascript对时间的校验操作

    function check() { var startTime=$("#sTime").val(); var endTime=$("#eTime").val( ...

  8. [C.Sharp] TimeSpan的用法,获取测试程序运行时间

    TimeSpan的用法 TimeSpan是用来表示一个时间段的实例,两个时间的差可以构成一个TimeSpan实例,现在就来简单介绍一下几点重要的用法: a 先来介绍几个方法 TimeSpan.Minu ...

  9. C# 代码中 计算某个函数 或WebService 请求花费时间

    /// 计算请求所花费的时间 System.Diagnostics.Stopwatch watch = new System.Diagnostics.Stopwatch(); watch.Start( ...

随机推荐

  1. asp .net 模板引擎 使用 Razor 生成html静态页面

    刚开始不是理解 写完之后 觉得还蛮简单的 分为这几个步骤 1.获取页面模板Html 2.获取数据 3.解析模板和数据,生成静态页Html代码 4.生成静态文件 模板形式是mvc的模式,会mvc 看一下 ...

  2. hdu 5040 Instrusive

    Instrusive Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Tota ...

  3. Android的47个小知识

    1.判断sd卡是否存在  boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environme ...

  4. Mysql only_full_group_by以及其他关于sql_mode原因报错详细解决方案

    Mysql only_full_group_by以及其他关于sql_mode原因报错详细解决方案 网上太多相关资料,但是抄袭严重,有的讲的也是之言片语的,根本不连贯(可能知道的人确实不想多说) 我总共 ...

  5. [js高手之路]深入浅出webpack教程系列7-( babel-loader,css-loader,style-loader)的用法

    什么是loader呢,官方解释为文件的预处理器,通俗点说webpack在处理静态资源的时候,需要加载各种loader,比如,html文件,要用html-loader, css文件要用css-loade ...

  6. RESTful学习记录

    1.1 什么是RESTful RESTful架构,就是目前最流行的一种互联网软件架构.它结构清晰.符合标准.易于理解.扩展方便,所以正得到越来越多网站的采用. RESTful(即Representat ...

  7. mac系统webstorm快捷键

    WebStorm 是jetbrains公司旗下一款JavaScript 开发工具.被广大中国JS开发者誉为"Web前端开发神器"."最强大的HTML5编辑器". ...

  8. js获取地址栏参数数据

    // 获取指定地址栏数据//name:参数名 function GetQueryString(name, url) { var reg = new RegExp("(^|&)&quo ...

  9. 用webgl打造自己的3D迷宫游戏

    用webgl打造自己的3D迷宫游戏 2016/09/19 · JavaScript · WebGL 原文出处: AlloyTeam    背景:前段时间自己居然迷路了,有感而发就想到写一个可以让人迷路 ...

  10. 转:【Java集合源码剖析】HashMap源码剖析

    转载请注明出处:http://blog.csdn.net/ns_code/article/details/36034955   您好,我正在参加CSDN博文大赛,如果您喜欢我的文章,希望您能帮我投一票 ...