我正在尝试将一个属性值与另一个属性值进行比较,如果它返回 true,如果为 false,我什么也不做,然后我添加一些东西。
继承人的 xml 或它的一部分。
<tv grabber-info-name="MCE7-digiguide">
<channel id="101" id2="817">
<display-name>BBC 1 West</display-name>
</channel>
<programme channel="101" channel2="817" start="20110626013000 +0000" stop="20110626060000 +0000">
</programme>
<channel id="102" id2="5223">
<display-name>BBC Two</display-name>
</channel>
<programme channel="102" channel2="5223" start="20110626021000 +0000" stop="20110626220000 +0000">
</programme>
</tv>
我正在使用这些方法来比较 Jodrell 显示的数据。
在 MXFDoc 类中
public void CheckTimes()
{
MXFProgramme previousProg = null;
MXFProgramme nextProg = null;
foreach (MXFProgramme prog in Programmes.OrderBy(p => p.channel))
{
nextProg = prog;
if (previousProg != null)
{
if (previousProg.stopped != nextProg.started)
{
MessageBox.Show(previousProg.stopped +" "+ nextProg.started.ToString() +" "+ previousProg.channel +" "+ nextProg.channel);
}
}
previousProg = prog;
}
}
在 MXFProgramme 类中
public DateTime stopped
{
get
{
string StopString = xProgramme.Attributes.GetNamedItem("stop").Value;
DateTime time = new DateTime(int.Parse(StopString.Substring(0, 4)), int.Parse(StopString.Substring(4, 2)), int.Parse(StopString.Substring(6, 2)), int.Parse(StopString.Substring(8, 2)), int.Parse(StopString.Substring(10, 2)), int.Parse(StopString.Substring(12, 2)));
return time.ToUniversalTime();
}
}
public DateTime started
{
get
{
string StartString = xProgramme.Attributes.GetNamedItem("start").Value;
DateTime time = new DateTime(int.Parse(StartString.Substring(0, 4)), int.Parse(StartString.Substring(4, 2)), int.Parse(StartString.Substring(6, 2)), int.Parse(StartString.Substring(8, 2)), int.Parse(StartString.Substring(10, 2)), int.Parse(StartString.Substring(12, 2)));
return time.ToUniversalTime();
}
}
这实际上工作得很好,我想不通的一件事是为什么返回的 DateTime 值超出了 1 小时。
提前致谢。