【发布时间】:2011-08-24 15:17:07
【问题描述】:
我使用以下 Linq To Entity 来获取我的“siteconfig”实体的第一条也是唯一一条记录:
var site = unitofwork.SiteConfigRepository.Get().FirstOrDefault();
但是当我的应用程序遇到以下代码时,会抛出“可为空的对象必须有一个值”:
if (site!= null) { TimeSpan span = DateTime.Now.Subtract((DateTime)site.logindDate ); }
我的实体中唯一可以为空的类型是一个名为 logindDate 的属性,并且是 DateTime 类型。
有人帮帮我吗?
【问题讨论】:
-
这是引发异常的确切行吗?如果没有,请扩展代码并添加堆栈跟踪。
-
是的,我在那里放了一个断点,当应用程序到达那个点时,抛出一个异常。
-
{ .... }之间有一些东西抛出异常。如果您使用可为空的 DateTime,请确保检查.HasValue。 -
@IAbstract in {....} 我只是以这种方式阅读并复制 loginDate :TimeSpan span = DateTime.Now.Subtract((DateTime)site.logindDate );
标签: c# linq linq-to-entities