asp.net 时间比较,常用于在某段时间进行操作
DateTime.Compare(t1,t2)比较两个日期大小,排前面的小,排在后面的大,比如:2011-2-1就小于2012-3-2
返回值小于零: t1 小于 t2。
返回值等于零 : t1 等于 t2。
返回值大于零: t1 大于 t2。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{ DateTime t1 = DateTime.Parse("2011-2-2");
DateTime t2 = DateTime.Parse("2011-3-1"); if (DateTime.Compare(t1, t2) > )
Console.WriteLine("t1 > t2");
if (DateTime.Compare(t1, t2) == )
Console.WriteLine("t1 == t2");
if (DateTime.Compare(t1, t2) < )
Console.WriteLine("t1 < t2");
}
}
}
运行结果:
t1 < t2
请按任意键继续. . .
例
以下逻辑表示:
每天2人轮流值班,每天08:30进行一次换班,每天17:30进行一次换班,当天08:30之前的调用上一天第二人值班
/// <summary>
/// 时间比较,与当前系统时间比较,若返回1,表示t1小;若返回-1,表示t1大
/// </summary>
/// <param name="t1"></param>
/// <returns></returns>
private static int CompareTime(string t1)
{
int str = ;
if (DateTime.Compare(Convert.ToDateTime(t1), Convert.ToDateTime(DateTime.Now.ToString("HH:mm:ss"))) >= )
{
str = ;
}
else
{
str = -;
}
return str;
}
string morning_time = "08:30:00";
string night_time = "17:30:00";
if (CompareTime("00:00:00") == - && CompareTime(morning_time) == )//处于当日00:00-08:30之间,选择上一天第二人
{ strWhere = " work_date='" + (DateTime.Now.Day - ).ToString() + "'"; }
else if (CompareTime(morning_time) == - && CompareTime("23:59:59") == )//处于当日08:30:00-23:59:59之间,选择当天第一人或第二人
{ strWhere = " work_date='" + DateTime.Now.Day.ToString() + "'"; }
string[] StrWordList = StrWord.Split('|');
StrWordList = strTo(StrWordList);//去除数组中重复和空白的元素
if (StrWord.Length >= && StrNumList.Length >= )
{
returnStr = "";
if (type == "top")
{
if (CompareTime("00:00:00") == - && CompareTime(morning_time) == )//处于当日00:00-08:30之间,选择上一天第二人
{
returnStr = "<a href=\"manager/work.aspx\" target=\"mainframe\">" + StrWordList[].ToString() + StrNumList[] + "</a>";
}
else if (CompareTime(morning_time) == - && CompareTime(night_time) == )//处于当日08:00-17:30之间,选择当天第一人
{
returnStr = "<a href=\"manager/work.aspx\" target=\"mainframe\">" + StrWordList[].ToString() + StrNumList[] + "</a>";
}
else if (CompareTime(night_time) == - && CompareTime("23:59:59") == )//处于当日17:30-24:00之间,选择当天第二人
{
returnStr = "<a href=\"manager/work.aspx\" target=\"mainframe\">" + StrWordList[].ToString() + StrNumList[] + "</a>";
}
}
}
asp.net 时间比较,常用于在某段时间进行操作的更多相关文章
- Mysql 更新时间(加上或者减去一段时间)
Mysql时间加减函数为date_add().date_sub() 定义和用法 DATE_ADD() 函数向日期添加指定的时间间隔. DATE_SUB() 函数向日期减少指定的时间间隔. 语法 DAT ...
- python 函数结果缓存一段时间的装饰器
把函数结果缓存一段时间,比如读取一个mongodb,mongodb中的内容又在发生变化,如果从部署后,自始至终只去读一次那就感触不到变化了,如果每次调用一个函数就去读取那太频繁了耽误响应时间也加大了c ...
- ASP.NET中的常用快捷键
想查找ASP.NET中的属性快捷键,忘记了,搜了一下,找到了ASP.NET中的常用快捷键. 大神文章:http://www.cnblogs.com/xiacao/archive/2012/06/12/ ...
- 使用Word API打开Word文档 ASP.NET编程中常用到的27个函数集
使用Word API(非Openxml)打开Word文档简单示例(必须安装Word) 首先需要引入参照Microsoft.Office.Interop.Word 代码示例如下: public void ...
- oracle 时间日期常用语句及函数
记录常用时间函数以及处理时间的sql语句 (1)获得系统时间select sysdate from dual; (2)设置时间的格式select to_char(sysdate,'yyyy/MM/dd ...
- 国内常用的几个NTP时间服务器
问题描述: 经常Windows或者Linux系统上面的时间跟我们本地的时间不一致 有时候就是Windows的Internet时间设置里面的Windows自带的时间同步服务器不好使 Linux配置NTP ...
- 日期时间函数 mysql 和sqlserver 中对于常用函数的日期和时间函数的区别
1. sqlserver中获取时间用getdate(),默认返回格式是2019-01-21 13:58:33.053,具体的年月日,时分秒毫米,年月日之间用短线连接,时分秒之间用冒号连接,秒和毫米之间 ...
- Python常用模块(logging&re&时间&random&os&sys&shutil&序列化&configparser&&hashlib)
一. logging(日志模块) 二 .re模块 三. 时间模块 四. random模块 五. os模块 六. sys模块 七. shutil模块 八. 序列化模块(json&pickle&a ...
- 基于Linux整形时间的常用计算思路
上一次分享了Linux时间时区详解与常用时间函数,相信大家对Linux常见时间函数的使用也有了一定的了解,在工作中遇到类似获取时间等需求的时候也一定能很好的处理.本文基于Linux整形时间给出一些简化 ...
随机推荐
- 【ZZ】MySql语句大全:创建、授权、查询、修改等
http://blog.csdn.net/evankaka/article/details/45580845
- C#多线程交替赋值取值
static AutoResetEvent auto=new AutoResetEvent(false); ; ; static void Main() { Thread th1 = new Thre ...
- Mac OS X操作系统常见快捷键集锦
Mac OS X操作系统常见快捷键集锦 启动时的快捷键 启动时按住 X 键 : 强制从 Mac OS X 启动(适用于那些在同一宗卷上安装了 Mac OS X 和 Mac OS 9 双系统的 Mac ...
- MYSQL 分析表、检查表和优化表
1. 对表进行优化 ( 优化表主要作用是消除删除或者更新造成的空间浪费) 2. 对表进行分析(分析关键字的分布, 分析并存储MyISAM和BDB表中键的分布) 3. 对表进行检查(检查表的错误,并且为 ...
- Android进阶笔记06:Android 实现扫描二维码实现网页登录
一. 扫描二维码登录的实现机制: 详细流程图: (1)PC端打开网页(显示出二维码),这时候会保存对应的randnumber(比如:12345678). (2)Android客户端扫码登录,Andro ...
- Android(java)学习笔记72:线程的状态转换图以及常见执行情况
1. 线程的状态转换图以及常见执行情况: 2. 线程状态类型: (1)新建状态(New):新创建了一个线程对象.(2)就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start() ...
- sql 联合查询速度慢,需要对其进行分组
分组:SELECT * FROM(SELECT ROW_NUMBER() OVER(ORDER BY ProjID) as row_number,* FROM ( select ProjAppl ...
- Eclipse+Axis自动生成Web Service WSDL文件
JDK版本:1.5.0_22 Eclipse版本:Helios Service Release 2(3.6.2) 首先创建一个web工程,创建过程如下: 如果选择Apache Tomcat v5.5, ...
- 关于location.href几种用法的区别
常见的几种开发形式: self.location.href; window.location.href; this.location.href; location.href; parent.locat ...
- Angular 2.0 从0到1 (七)
第一节:Angular 2.0 从0到1 (一)第二节:Angular 2.0 从0到1 (二)第三节:Angular 2.0 从0到1 (三)第四节:Angular 2.0 从0到1 (四)第五节: ...