110,538
社区成员
发帖
与我相关
我的任务
分享
DateTime d1 = DateTime.Now;
DateTime? d2 = null;
var rs = d1 == d2;
Console.WriteLine(rs);
DateTime d1 = DateTime.Now;
DateTime? d2 = null;
var rs = d1.CompareTo(d2)==0;
Console.WriteLine(rs);
需要注意的是 你自己说了 有一个可能为空.. 所以为空的要在后面就行了,
create table xx
(
id int identity(1,1) primary key not null,
name varchar(100) null,
age int null,
regtime datetime null,
)
那么设个生成对应的model就是
public class xx
{
public int id{get;set;}
public name {get;set;}
public int? age {get;set;}
public datetime? regtime{get;set}
}
这是很正常很普通的好吧...
而且时间为空或者数字为空 这种需求 很普通.
至于你没遇到,那是你的问题.不能能说这些东西在c#里没有这么干的..
无知不是装厉害的本钱......[/quote]
那怎么比较这样的时间类型数据呢???
public bool CompareDateTime(DateTime? d1, DateTime? d2){
//todolist
}
但事实上, 没有必要把这种值类型上升为引用类型, 搞出这种不方不便的东西出来。
在数据库里, 不要定义可空的字段类型, 统一给定默认值。
create table t(
birthday datetime not null default('1900-01-01'),
addTime datetime not null default(getdate())
)
逻辑上更清晰, 索引的效率也更高。
DateTime? time1 = new DateTime(2017, 1, 1, 1, 1, 1);
DateTime? time2 = new DateTime(2017, 1, 1, 1, 1, 2);
bool isBig = time2 > time1; // true
DateTime? time3 = null;
isBig = time3 > time1; // false
public int CompareTo(DateTime value);
public int CompareTo(object value);
DateTime t1?=……
DateTime? a = null;
DateTime b = DateTime.Now;
var c = b.CompareTo(a); //1
是不会有问题的
try{
DateTime? startime = null;
DateTime? endtime = null;
sdtime = Convert.ToDateTime("2017-04-11 08:00:00");
endtime = Convert.ToDateTime("2017-04-11 20:00:00");
TimeSpan ts = startime - endtime;//时间比较
if (ts.TotalSeconds > 0) {}
}catch (Exception ex)
{throw; }
create table xx
(
id int identity(1,1) primary key not null,
name varchar(100) null,
age int null,
regtime datetime null,
)
那么设个生成对应的model就是
public class xx
{
public int id{get;set;}
public name {get;set;}
public int? age {get;set;}
public datetime? regtime{get;set}
}
这是很正常很普通的好吧...
而且时间为空或者数字为空 这种需求 很普通.
至于你没遇到,那是你的问题.不能能说这些东西在c#里没有这么干的..
无知不是装厉害的本钱......
DateTime? dt1, dt2;
if(dt1.HasValue && dt2.HasValue)
{
if(dt1.Value.CompareTo(dt2.Value))
}