2016-01-20 100 views
0

我有MVC项目。ASP.NET IIS服务器警告应用程序错误NullReferenceException

它工作正常,但有时会引发异常。

这是一个错误的IIS屏幕截图。 enter image description here

对象引用未设置为不设置到对象

当用户重新载入页面的一个实例的对象

对象引用的实例,错误消失。

@if (Model.CashboxStatus != null && Model.CashboxStatus.Count > 0) 
    { 
     foreach (var item in Model.CashboxStatus) 
     { 
      <td>@item.CashboxName</td> 
     } 
    } 

这是代码填充型号:

public ActionResult Cashboxes() 
{ 
    CashboxesModel model = new CashboxesModel(); 
    model.Cashboxes = CashboxLogic.GetCashboxes(); 
    return View(model); 
} 

它给出了第一行的错误。

我不知道为什么会出现此错误。 我们每天约有100位用户。

任何想法?

+0

是否已确认'Model'不为空? – CodeZombie

+0

当我调试我的源模型不为空 –

+0

好吧,你的模型中的东西是null。你还没有提供足够的细节来解决这个问题。你所能做的就是进行额外的日志记录并查看用户试图查看的数据并尝试重现问题。此外,不要放入代码或错误的截图 - 将文本本身复制到您的问题。 – user1666620

回答

0

试试这个:

@if (Model.CashboxStatus != null && Model.CashboxStatus.Count > 0) 
    { 
     foreach (var item in Model.CashboxStatus) 
     { 
      <td>@item.CashboxName ?? string.Empty</td> 
     } 
    } 

让我知道,如果它

+0

我的代码在本地工作,,,但有时它会引发服务器异常,,,我会测试你的代码在服务器,并会问 –

+0

这是如何解决这个问题,而不是隐藏一个错误?你怎么知道问题出在那个特定的属性上而不是整个模型? – user1666620

+0

我们的目的不是为了隐藏错误,我们需要知道CashboxName属性是否为null。该模型已经过验证并具有元素。此外,downvote是必要的?如果你可以改正答案,那就做吧。 – Eulogy

相关问题