public DateTime OriginalTimeToSolarTime(DateTime originalTime)
        {
            var localTime = originalTime + this.timeZone.BaseUtcOffset;

            return(SolarTime.GetSolarTime(localTime,
                                          this.longitudeDegrees,
                                          this.timeZone.BaseUtcOffset));
        }
示例#2
0
 public DateTime OriginalTimeToSolarTime(DateTime originalTime)
 {
     if (timeZone.IsDaylightSavingTime(originalTime))
     {
         originalTime -= TimeSpan.FromHours(1);
     }
     return(SolarTime.GetSolarTime(originalTime,
                                   this.longitudeDegrees,
                                   this.timeZone.BaseUtcOffset));
 }
        public void LocalTimeCalculationOnFebruary3()
        {
            var result = SolarTime.GetSolarTime(localTime, longitude, timeDifferenceToGMT);

            Assert.AreEqual(localTime.Year, result.Year);
            Assert.AreEqual(localTime.Month, result.Month);
            Assert.AreEqual(localTime.Day, result.Day);
            Assert.AreEqual(10, result.Hour);
            var remainderMinutesAndSeconds = result.Minute + result.Second / 60.0;

            Assert.AreEqual(19, remainderMinutesAndSeconds, 0.5);
        }
 public DateTime OriginalTimeToSolarTime(DateTime originalTime)
 => SolarTime.GetSolarTime(originalTime,
                           this.longitudeDegrees,
                           this.timeZone.BaseUtcOffset);