我有这段代码,最终将被序列化为JSON,用于Jquery FullCalender插件。ToUnixTimeSpan方法接受一个DateTime对象并返回自1970年以来的秒数。
DateEnd可能为空。在这段代码中,如果DateEnd为空,我该如何测试它并跳过end = ToUnixTimespan(e.DateEnd)?是否有C#等效的Groovy安全运算符?
DateEnd可能为空。在这段代码中,如果DateEnd为空,我该如何测试它并跳过end = ToUnixTimespan(e.DateEnd)?是否有C#等效的Groovy安全运算符?
var listEvents = from e in eventRepository.GetAllEvents()
select new
{
id = e.EventID,
title = e.EventTitle,
start = ToUnixTimespan(e.DateStart),
end = ToUnixTimespan(e.DateEnd),
url = "/Events/Details/" + e.EventID
};
关于ToUnixTimespanMethod的更多信息:
private long ToUnixTimespan(DateTime date)
{
TimeSpan tspan = date.ToUniversalTime().Subtract(new DateTime(1970, 1, 1, 0, 0, 0));
return (long)Math.Truncate(tspan.TotalSeconds);
}
end
类型与e.DateEnd
的类型相同,我怀疑并非如此... - Jon SkeetToUnixTimespan(e.DateEnd.Value)
。 - James Curran