C# DateTime在UWP PC上工作,但不在UWP Raspberry Pi上工作
我用Windows10IoT内核在Rpi上为触摸屏构建了一个UI 当我在我的电脑上测试它时,它工作了。如果我现在在Raspberry上测试软件,我会在这一行上得到一个异常: 这是一个类型为“System.NullReferenceException”的异常。这个DateTime是什么意思。现在是null,对吗C# DateTime在UWP PC上工作,但不在UWP Raspberry Pi上工作,c#,uwp,raspberry-pi3,windows-10-universal,windows-10-iot-core,C#,Uwp,Raspberry Pi3,Windows 10 Universal,Windows 10 Iot Core,我用Windows10IoT内核在Rpi上为触摸屏构建了一个UI 当我在我的电脑上测试它时,它工作了。如果我现在在Raspberry上测试软件,我会在这一行上得到一个异常: 这是一个类型为“System.NullReferenceException”的异常。这个DateTime是什么意思。现在是null,对吗 时间是在Windows设备门户上设置的,因此idk为什么没有“现在”时间我猜,lblTime和/或lblDay为空 您只需使用空检查(if(lblTime==null){)就可以调试这个问
时间是在Windows设备门户上设置的,因此idk为什么没有“现在”时间我猜,
lblTime
和/或lblDay
为空
您只需使用空检查(
if(lblTime==null){
)就可以调试这个问题。我现在已经发现了这个问题,一些代码之后工作正常。我会很惊讶,情况会是这样,DateTime
是一个不可为空的结构,因此在DateTime
实现中,某些内容必须是null
,这是不太可能的。我猜lblTime
或lblDay
是null
。设置断点并设置断点请在调用exception.ToString()
时返回的完整异常文本前查看变量的值。我很确定您会发现lblTime
或lblDay
为空。DateTime是一个结构,因此不可为空。它的数据也不可为空“是的,它可能意味着现在为空”-不,这并不意味着asDateTime
是一种不可为空的值类型。我同意您的期望,即lblTime
或lblDay
更可能为空,但从您的答案中删除第一句话是值得的-并将空值检查固定为C#,因为OP使用的是这种语言。
lblTime.Text = DateTime.Now.ToShortTimeString();
lblDay.Text = DateTime.Now.ToString("dddd");