我需要Kendo.ComboBox
在Editor Template
. 我已将模板定义如下:
<script>
function GetReportID() {
return {
reportID: 8
}
}
</script>
@(Html.Kendo().ComboBox()
.DataValueField("ReportPropertyID")
.DataTextField("PropertyName")
.DataSource(d => d.Read(r => r.Action("PopulateReportProperty", "TestTicketReportProperty").Data("GetReportID()"))))
此模板呈现在Kendo.Grid
:
columns.Bound(p => p.ReportPropertyData).ClientTemplate("#=ReportProperty.PropertyName#").EditorTemplateName("_PropertyNameEditor").Sortable(false).Width(180);
控制器内部需要调用的方法:
[HttpPost]
public ActionResult PopulateReportProperty([DataSourceRequest] DataSourceRequest request, int reportID)
{
var reportProperty = TicketReportPropertyRepository.GetReportPropertyEntityRepository(reportID);
ViewData["defaultPropertyEntity"] = reportProperty.First();
return Json(reportProperty.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
}
不调用此方法。
我究竟做错了什么?