【发布时间】:2014-06-17 14:07:46
【问题描述】:
控制器:
using (ISession session = NHIbernateSession.OpenSession())
{
var item = session.Query<CarModel>().ToList();
ViewBag.Modas = item;
return View();
}
查看:
<div class="form-group">
@Html.LabelFor(model => model.Modelis.model_name, new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownListFor(model => model.Modelis.Id, new SelectList(ViewBag.Modas, "Id", "model_name"), "--Select Cars--")
</div>
</div>
控制器(提交部分):
[HttpPost]
public ActionResult Create(Transport item)
{
try
{
using (ISession session = NHIbernateSession.OpenSession())
{
using (ITransaction transaction = session.BeginTransaction())
{
session.Save(item);
transaction.Commit();
}
}
return RedirectToAction("Index");
}
catch (Exception exception)
{
return View();
}
}
我在提交时收到错误:
值不能为空。 参数名称:项目
说明:在执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.ArgumentNullException:值不能为空。 参数名称:items
我不明白怎么回事
【问题讨论】:
-
能否提供用于提交的控制器方法。具体来说,方法签名是什么样的?抛出异常的代码是什么样的?
-
您没有在控制器中指定模型,因此对
model的任何引用都将是null。