joeharrison714 / MVCGrid.Net

http://mvcgrid.net
MIT License
74 stars 55 forks source link

Can't reload data #188

Open jamessuske1985 opened 5 years ago

jamessuske1985 commented 5 years ago

Hi all, I have a grid like so, this gets populated on a post method which works fine, but when I change the post data, I am expecting the same grid but with other data and it appears not to do that, I get the same data from the initial post, so how do I update the data?

[Authorize]
        [HttpPost]
        public ActionResult Index(DateTime? BatchDate, string Desc, string Usr, int Batches)
        {

            List<ClosingHeaderClass> headers = webService.LSH_ClosingHeaderGetAll();

            ViewData["headers"] = headers;

            ViewBag.user = user;
            ViewBag.Batches = Batches;
            ViewBag.Desc = Desc;
            ViewBag.BatchDate = BatchDate.ToString().Split(' ')[0];

            ClosingHeaderAddClass closing = new ClosingHeaderAddClass();

            GridDefinition<ClosingDetailsClass> def = new GridDefinition<ClosingDetailsClass>();

            GridColumn<ClosingDetailsClass> ID = new GridColumn<ClosingDetailsClass>();
            ID.ColumnName = "ID";
            ID.HeaderText = "ID";
            ID.HtmlEncode = false;
            ID.ValueTemplate = "<input type='text' name='ID' value='{Value}' />";
            ID.ValueExpression = (i, c) => i.ID.ToString();
            def.AddColumn(ID);

            GridColumn<ClosingDetailsClass> Seq = new GridColumn<ClosingDetailsClass>();
            Seq.ColumnName = "Seq";
            Seq.HeaderText = "Seq";
            Seq.HtmlEncode = false;
            Seq.ValueTemplate = "<input type='text' name='Seq' value='{Value}' />";
            Seq.ValueExpression = (i, c) => i.Seq.ToString();
            def.AddColumn(Seq);

            GridColumn<ClosingDetailsClass> job = new GridColumn<ClosingDetailsClass>();
            job.ColumnName = "Job";
            job.HeaderText = "Job";
            job.HtmlEncode = false;
            job.ValueTemplate = "<input type='text' name='Job' value='{Value}' />";
            job.ValueExpression = (i, c) => i.Job;
            def.AddColumn(job);

            GridColumn<ClosingDetailsClass> cc = new GridColumn<ClosingDetailsClass>();
            cc.ColumnName = "CC";
            cc.HeaderText = "Cost Code";
            cc.HtmlEncode = false;
            cc.ValueTemplate = "<input type='text' name='CC' value='{Value}' />";
            cc.ValueExpression = (i, c) => i.CC;
            def.AddColumn(cc);

            GridColumn<ClosingDetailsClass> date = new GridColumn<ClosingDetailsClass>();
            date.ColumnName = "Date";
            date.HeaderText = "Date";
            date.HtmlEncode = false;
            date.ValueTemplate = "<input type='text' name='Date' value='{Value}' class='datepicker' />";
            date.ValueExpression = (i, c) => i.Date.Split(' ')[0];
            def.AddColumn(date);

            if (Batches == 0)
            {
                ClosingHeaderAddClass item = webService.LSH_ClosingHeaderAdd(BatchDate, Desc, Usr);

                closing = webService.LSH_ClosingHeaderGet(item.ID);

                def.RetrieveData = (options) =>
                {
                    return new QueryResult<ClosingDetailsClass>()
                    {
                        Items = webService.LSH_ClosingDetailsGetBatch(item.ID),
                        TotalRecords = 0
                    };
                };

            }
            else
            {
                ClosingHeaderAddClass item = webService.LSH_ClosingHeaderGet(Batches);

                closing = webService.LSH_ClosingHeaderGet(item.ID);

                def.RetrieveData = (options) =>
                {
                    return new QueryResult<ClosingDetailsClass>()
                    {
                        Items = webService.LSH_ClosingDetailsGetBatch(item.ID),
                        TotalRecords = 0
                    };
                };
            }

            try
            {
                MVCGridDefinitionTable.GetDefinition<ClosingDetailsClass>("NonFluentUsageExample");
            }
            catch (Exception e)
            {
                MVCGridDefinitionTable.Add("NonFluentUsageExample", def);
            }

            return View(closing);
        }
jamessuske1985 commented 5 years ago

Anyone?

jamessuske1985 commented 5 years ago

?