C# 返回错误的天数Nullable对象必须具有值
我尝试了许多不同的方法,视图上的代码似乎是正确的。然而,我得到的错误,我不知道为什么。代码嵌套为仅在项目C# 返回错误的天数Nullable对象必须具有值,c#,asp.net-mvc,C#,Asp.net Mvc,我尝试了许多不同的方法,视图上的代码似乎是正确的。然而,我得到的错误,我不知道为什么。代码嵌套为仅在项目时运行=空但是,它似乎仍在查看日期为空的记录。我甚至把它改成了.hasValue,我仍然得到了错误 这是我的密码: @if (item.PaymentRequestedDate != null) { var dates = DateTime.Now; var reqDate = item.PaymentRequestedDate.Value;
时运行=空
但是,它似乎仍在查看日期为空的记录。我甚至把它改成了.hasValue
,我仍然得到了错误
这是我的密码:
@if (item.PaymentRequestedDate != null)
{
var dates = DateTime.Now;
var reqDate = item.PaymentRequestedDate.Value;
var days = (dates - reqDate).TotalDays;
<span class="badge badge-pill badge-success">Requested: @Html.DisplayFor(modelItem => item.PaymentRequestedDate)</span>
@if (days >= 15)
{
<span class="badge badge-pill badge-success">Past Due: @days days</span>
}
}
下面是运行的完整代码。正如我在评论中提到的,这个错误是因为If语句中有一个额外的@。我使用Elmah错误,出于某种原因,它没有跟踪该错误
@if (item.PaymentRequestedDate != null)
{
var date = DateTime.Now;
var reqDate = item.PaymentRequestedDate.Value;
var newdate = reqDate.AddDays(15);
var isLate = (date - newdate).Days;
var days = (date - reqDate).Days;
<span class="badge badge-pill badge-success">Requested: @Html.DisplayFor(modelItem => item.PaymentRequestedDate)</span>
if ((days >= 15) && (item.Payment == 1))
{
<span class="badge badge-pill badge-warning">Past Due: @isLate days</span>
}
}
@if(item.PaymentRequestedDate!=null)
{
var date=DateTime.Now;
var reqDate=item.PaymentRequestedDate.Value;
var newdate=reqDate.AddDays(15);
var isLate=(日期-newdate).Days;
var天数=(日期-请求日期).days;
请求:@Html.DisplayFor(modelItem=>item.PaymentRequestedDate)
如果((天数>=15)和&(项目付款==1))
{
逾期:@离岛天数
}
}
请显示PaymentRequestedDate
的定义。那么PaymentRequestedDate是一个可为空的日期时间?你能给我看一下“item”的类别吗我想看看属性item.PaymentRequestedDate的类型是什么?是DateTime
还是DateTime?
(又称Nullable
)?请再次尝试清理、重建和运行项目。var dates=DateTime.Now代码>-这是非常糟糕的变量命名。
@if (item.PaymentRequestedDate != null)
{
var date = DateTime.Now;
var reqDate = item.PaymentRequestedDate.Value;
var newdate = reqDate.AddDays(15);
var isLate = (date - newdate).Days;
var days = (date - reqDate).Days;
<span class="badge badge-pill badge-success">Requested: @Html.DisplayFor(modelItem => item.PaymentRequestedDate)</span>
if ((days >= 15) && (item.Payment == 1))
{
<span class="badge badge-pill badge-warning">Past Due: @isLate days</span>
}
}