Asp.net mvc 为什么@Model为空?
视图:Registration.cshtmlAsp.net mvc 为什么@Model为空?,asp.net-mvc,model,null,Asp.net Mvc,Model,Null,视图:Registration.cshtml @model MyNameSpace.Models.NewPatientRegistrationViewModel <div> ... All the HTML </div> 控制器:AccountControllers.cs public ActionResult Registration() { return View(); } 在视图中,对@Model的引用出现null,并
@model MyNameSpace.Models.NewPatientRegistrationViewModel
<div> ... All the HTML </div>
控制器:AccountControllers.cs
public ActionResult Registration()
{
return View();
}
在视图中,对@Model的引用出现null,并抛出null异常错误。对MVC来说还是新的。。。我确信我遗漏了一些明显的东西。更改控制器操作以将视图模型返回到视图
public ActionResult Registration()
{
var model = new RegistrationViewModel();
return View(model);
}
如果视图需要实例化视图模型上的其他属性才能进行渲染,则可以在将其传回之前实例化视图模型上的其他属性 A.可以从get方法传递null。批准的答案指出了这一点 B.您可能有一个字段,该字段的名称与您在post上绑定模型的参数的名称相同
public ActionResult Add(ContentImage image)
{
if (ModelState.IsValid)
{
UploadImage(Request.Files["Image"]);
//Some other actions
}
return View("Edit", image);
}
在我看来,我有:
@Html.TextBox("Image", string.Empty, new { type = "file" })
您没有将viewmodel对象传递给ActionResult中的View()调用。好的。。。帮助一个新手。这不是返回视图()的内容吗;做我缺少什么?return View()接受要传递的模型,因此创建一个新的RegistrationViewModel并将其传递给您的视图您需要将viewmodel对象传递给View()调用:
return View(yourViewModelObject)代码>当然,实际上有一个您想要传递到视图中以供消费/填充的对象。谢谢!我会尽快记下答案。
@Html.TextBox("Image", string.Empty, new { type = "file" })