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整形时间给出一些简化 ...
随机推荐
- VRP相关知识整理
一.扩展问题分类: ★ the capacitated vehicle routing problem (CVRP) , 即classical VRP ★ the vehicle routing pr ...
- NopCommerce 数据库初始化
NopCommerce数据库初始化比较复杂,我简化了,只初始化创建一张表,不多说,直接上代码: //数据实体 /// <summary> /// Represents an affilia ...
- Linux环境变量的修改(永久,暂时)
Linux修改环境变量,很简单但很重要 一.Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1. 永久的:需要修改配置文件,变量永久生效. 2. 临时的:使用export命令 ...
- Yar - Yet Another RPC framework for PHP
Introduction Yar is a RPC framework which aims to provide a simple and easy way to do communication ...
- javascript 十六进制与RGB颜色值的相互转换
http://www.zhangxinxu.com/wordpress/?p=646 http://www.zhangxinxu.com/wordpress/?p=646 -------------- ...
- Terrible Sets
Terrible Sets Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 3017 Accepted: 1561 Des ...
- Android开发之神奇的Fading Edge,让你的View更有层次感!
最近在研究Android Framework层源码,发现我们对源码的理解应该建立在对API的理解之上,如果有一些API你没用过,那么即使你在源码中见到这个东西都不知道是干嘛的,更谈不上理解了.一直以来 ...
- log4j个人使用整理
Log4j介绍: 略过. 配置: Eclipse项目中添加log4j.jar到lib下. 在bin目录下新建log4j.properties,编辑好log4j配置文件. 样例分析: log4j.roo ...
- CF Tanya and Postcard
Tanya and Postcard time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- [改善Java代码]让工具类不可实例化
建议42: 让工具类不可实例化 Java项目中使用的工具类非常多,比如JDK自己的工具类java.lang.Math.java.util.Collections等都是我们经常用到的.工具类的方法和属性 ...