Подтвердить что ты не робот

Разделить интервалы времени на 2?

У меня есть два раза, и их значения берутся из XML из Интернета.

XElement xmlWdata = XElement.Parse(e.Result);

string SunRise = xmlWdata.Element("sun").Attribute("rise").Value;
string SunSet = xmlWdata.Element("sun").Attribute("set").Value;

DateTime sunrise = Convert.ToDateTime(SunRise.Remove(0,11));
DateTime sunset = Convert.ToDateTime(SunSet.Remove(0, 11));

Это дает мед время: 04:28 для восхода солнца и 22:00 для заката. Как выполнить расчет, когда я беру:

(sunrise + (sunset-sunrise)/2)

4b9b3361

Ответ 1

Я думаю, вы хотите это сделать:

TimeSpan span = sunset-sunrise;
TimeSpan half = new TimeSpan(span.Ticks / 2);
DateTime result = sunrise + half;

Он может быть записан в одну строку, если вы хотите.

Ответ 2

TimeSpan sunnyTime = TimeSpan.FromTick(sunrise.Ticks + (sunset.Ticks - sunrise.Ticks) / 2);