use*_*168 7 asp.net-mvc asp.net-mvc-4
问题是在将数据从控制器传递到视图时获得空引用异常
我将模型传递给控制器的视图,如下所示:
{
ViewBag.PartId = id;
var viewmodel= new Orderviewmodelnew();
var order = new OrderMnagernew().GetSingleOrderField(id);
viewmodel.ProjectId=order.ProjectId;
return View(viewmodel);
}
Run Code Online (Sandbox Code Playgroud)
在视图中我有这样的代码
@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") })
Run Code Online (Sandbox Code Playgroud)
我试过这样的事
@if(Model.ProjectId==Null)
{/....}
Run Code Online (Sandbox Code Playgroud)
在控制器中,我尝试这样做,如果它是null,则不传递模型
var order = new OrderMnagernew().GetSingleOrderField(id);
if(order!=null)
{
viewmodel.ProjectId=order.ProjectId;
return View(viewmodel);
}
return View()
Run Code Online (Sandbox Code Playgroud)
视图中的projectid的问题显示异常.
我想显示空字符串,如果它为null并显示剩余部分..
这段代码是错误的:
@Model.ProjectID==null??string.empty
Run Code Online (Sandbox Code Playgroud)
如果ProjectID
为可空类型,则应输入:
@(Model.ProjectID ?? string.empty)
Run Code Online (Sandbox Code Playgroud)
添加:
更换:
return View()
Run Code Online (Sandbox Code Playgroud)
与:
return View(new Orderviewmodelnew())
Run Code Online (Sandbox Code Playgroud)
因为null
对象没有任何属性
归档时间: |
|
查看次数: |
25445 次 |
最近记录: |