我正在使用 Quartz.NET( http://quartznet.sourceforge.net/ ) 并且我试图将开始日期设置为午夜。但是我在创建这个日期时遇到了问题。该应用程序将位于不同时区的不同服务器上。但我希望这个时间始终设置为太平洋标准时间的午夜。
这是我不工作的代码:
TimeZoneInfo info = TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time");
DateBuilder dateBuilder = DateBuilder.NewDateInTimeZone(info).AtHourMinuteAndSecond(0,0,0);
DateTimeOffset runTime = dateBuilder.Build();
IJobDetail job = JobBuilder.Create<TimeJob>()
.WithIdentity("job1", "group1")
.Build();
ITrigger trigger = TriggerBuilder.Create()
.WithIdentity("trigger1", "group1")
.StartAt(runTime)
.WithSimpleSchedule(x => x.WithIntervalInHours(24).RepeatForever())
.Build();
我需要 DateTimeOffset 格式的日期,即太平洋标准时间午夜。我可能正在使用 MVC 3。 非常感谢任何帮助!
最佳答案
无论服务器如何,这都应该为您提供太平洋标准时间午夜日期。
DateTime dateInDestinationTimeZone = System.TimeZoneInfo.ConvertTimeBySystemTimeZoneId(DateTime.UtcNow, System.TimeZoneInfo.Utc.Id, "Pacific Standard Time").Date;
关于c# - 如何创建一个设置为太平洋标准时间午夜的 DateTimeOffset,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10301885/