模型在第二次被调用时失去它的值
本文关键字:失去 调用 第二次 模型 | 更新日期: 2023-09-27 18:12:17
我有一个Kendo grid调用这两个方法。
public ActionResult DepthDefinition_Read([DataSourceRequest] DataSourceRequest request, int wellId)
{
var list = _service.FindBy(x => x.WellId == wellId);
return Json(list.ToDataSourceResult(request));
}
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult DepthDefinition_Create([DataSourceRequest] DataSourceRequest request, DepthDefinition depthDefinition, int wellId)
{
if (depthDefinition != null && ModelState.IsValid)
{
depthDefinition = _service.Insert(depthDefinition);
}
return Json(new[] { depthDefinition }.ToDataSourceResult(request, ModelState));
}
现在,调用定义看起来像这样:
.Read(read => read.Action("DepthDefinition_Read", "DepthDefinition",
new RouteValueDictionary(new Dictionary<string, object>() { { "wellId", Model } })))
.Create(update => update.Action("DepthDefinition_Create", "DepthDefinition",
new RouteValueDictionary(new Dictionary<string, object>() { { "wellId", Model } })))
当我加载带有网格的视图时,我这样做:
public ActionResult Index(int wellId)
{
return PartialView("DepthDefinition", wellId);
}
Read方法获取wellId
,其值为1。一切都很甜蜜。然后继续创建新行,单击按钮,插入我的值并单击保存。现在发生的是,我试图传入的wellId
神奇地改变了,现在是0....这到底是怎么发生的?我的模型失去价值了吗?
谁能解释一下为什么从第一次调用到第二次调用都忘记了它的值?
向Telerik提出了同样的问题。得到了一个很好的答案:
http://www.telerik.com/account/support-tickets/view-ticket.aspx?threadid=826587