Hello, I am unable to get data into my kendo grid. I have looked at many other threads but nothing has helped so far. I want to get the data from my controller / model but I am not sure if i am trying to do it correctly VIEW
@model MyProject.Models.POApprovalViewModel @{ Layout = "~/Views/Shared/_Layout.cshtml";}@{ ViewBag.Title = "PO Approval";}<div class="container"> <h4>PO Approval</h4> @(Html.Kendo().Grid(Model.AssignedApprovals) .Name("grdPOs") .Columns(columns => { columns.Bound(model => model.PoId); columns.Bound(model => model.PoStatus); }) .Pageable() .Sortable() .DataSource(dataSource => dataSource .Ajax() .ServerOperation(true) .Model(model => model.Id("PoId")) .Read(read => read.Action("POApproval_Read", "POApproval")) ) )</div>
CONTROLLER
public class POApprovalController : Controller{ string UserId; POApprovalViewModel po; // GET: POApproval public ActionResult Index() { po = new POApprovalViewModel(); return View(po); } [HttpPost] public ActionResult POApproval_Read() { dbPOApproval db = new dbPOApproval(); return Json(db.GetAssignedApprovals()); }}
MODEL
public class POApprovalViewModel { public List<OLAssignedApprovals> AssignedApprovals { get { if (_AssignedApprovals == null) { _AssignedApprovals = new List<OLAssignedApprovals>(); } return _AssignedApprovals; } } private List<OLAssignedApprovals> _AssignedApprovals; } public class OLAssignedApprovals { public int PoId { get; set; } public string PoStatus { get; set; } } public class dbPOApproval { MyDataSourceOjbect objPOApproval = new MyDataSourceOjbect(); public List<Models.OLAssignedApprovals> GetAssignedApprovals() { List<Models.OLAssignedApprovals> lPoApproval = new List<Models.OLAssignedApprovals>(); Models.OLAssignedApprovals li = new Models.OLAssignedApprovals(); DataSet ds = objPOApproval.GetPOApprovals(); foreach (DataRow dr in ds.Tables[0].Rows) { li = new Models.OLAssignedApprovals(); li.PoId = Convert.ToInt32(dr["POID"]); li.PoStatus = dr["POStatus"].ToString(); lPoApproval.Add(li); } return lPoApproval; } }