在MVC视图模型空引用异常 [英] Model Null reference exception in mvc view

查看:140
本文介绍了在MVC视图模型空引用异常的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

从控制器传递数据时查看的问题越来越空引用异常

The problem is getting null reference exception when passing data from controller to view

我传递一个模型视图从控制器是这样的:

I am Passing a model to the view from the controller like this:

     {
        ViewBag.PartId = id;
        var viewmodel= new Orderviewmodelnew();
        var order = new OrderMnagernew().GetSingleOrderField(id);
        viewmodel.ProjectId=order.ProjectId;
        return View(viewmodel);
     }

和在视图我有code这样的

And in the View I have code like this

 @model DreamTrade.Web.BL.ViewModels.OrderViewModelnew


 Home>Project @Model.ProjectID==null??//projected is of type guid

 Customer :@(Model.CreatedBy??string.empty)

 Project :@Model.ProjectID
     @Model.ProjectDetail

  CreatedBy:@Model.CreatedBy

  Creation Date:@Model.CreationDate

 CompletedBy :@Model.ModifiedBy
 Completion Date:@Model.LastModified

 @Model.Image

   @Html.Action("OrderIndex", "Ordernew", new { PartId = Guid.Parse("C0497A40-2ADE-4B23-BA9F-1694F087C3D0") })

我已经试过像这样

I have Tried like this

@if(Model.ProjectId==Null)
 {/....}

在控制器我试图像这样通过不传递模型,如果它是空

In the controller i tried like this by not passing model if it is null

 var order = new OrderMnagernew().GetSingleOrderField(id);
    if(order!=null)
   {
        viewmodel.ProjectId=order.ProjectId;
        return View(viewmodel);

   }
 return View()

这个在视图中专案编号是显示异常的问题。

The problem with this the projectid in the view is showing exception.

我要显示空字符串,如果它是空,并显示剩余的部分。

I Want to display empty string if it is null and show the remaining part..

推荐答案

这code是错误的:

@Model.ProjectID==null??string.empty

如果专案编号是可空类型,你应该写:

if ProjectID is nullable type, you should write:

@(Model.ProjectID ?? string.empty)

补充:

替换为:

return View()

return View(new Orderviewmodelnew())

由于对象没有任何属性。

because null object doesn't have any properties

这篇关于在MVC视图模型空引用异常的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆