Quantcast
Channel: ADO.NET, Entity Framework, LINQ to SQL, NHibernate
Viewing all articles
Browse latest Browse all 1698

Datatables data filled from MySQL server

$
0
0

Hello,

I am attempting to run a simple ASP.NET datatable using jQuery and ajax. I have a functioning table when I run it with dummy data, however when attempting to connect to a remote MySQL server the data does not get retrieved and the table gets stuck 'Processing'.

My connection string in web.config

<connectionStrings><add name="DBConnection"
    connectionString="Server=studentserver.com.au;Database=admin_it_studies_dev;Uid=***;Pwd=***;"
    providerName="MySql.Data.MySqlClient" /></connectionStrings>

Just using one row of data for now

namespace CFI_Web_Application.Models
{
    [Table("crn_detail")]
    public class Subjects
    {
            [Key]
            public int? CRN { get; set; }
    }
}

The ajax side of things

<script>$(document).ready(function () {$("#subjectGrid").DataTable({"processing": true, // for show progress bar"serverSide": true, // for process server side"filter": true, // this is for disable filter (search box)"orderMulti": false, // for disable multiple column at once"pageLength": 5,

                ajax: {
                    url: "/Subjects/LoadData",
                    type: "POST",
                    datatype: "json"
                },

                columns: [
                    { "data": "CRN", "name": "CRN", "autoWidth": true },  

                ]

            });
        });
    </script>

Loading the data

 public ActionResult LoadData()
        {
                //Creating instance of DatabaseContext class  
                using (DatabaseContext _context = new DatabaseContext())
                {
                    var draw = Request.Form.GetValues("draw").First();
                    var start = Request.Form.GetValues("start").First();
                    var length = Request.Form.GetValues("length").FirstOrDefault();
                    var sortColumn = Request.Form.GetValues("columns[" + Request.Form.GetValues("order[0][column]").FirstOrDefault() + "][name]").FirstOrDefault();
                    var sortColumnDir = Request.Form.GetValues("order[0][dir]").FirstOrDefault();
                    var searchValue = Request.Form.GetValues("search[value]").FirstOrDefault();


                    //Paging Size (10,20,50,100)    
                    int pageSize = length != null ? Convert.ToInt32(length) : 0;
                    int skip = start != null ? Convert.ToInt32(start) : 0;
                    int recordsTotal = 0;

                    // Getting all subject data    
                    var subjectData = (from tempsubject in _context.Subjects
                                       select tempsubject);

                    //Sorting    
                    if (!(string.IsNullOrEmpty(sortColumn) && string.IsNullOrEmpty(sortColumnDir)))
                    { 
                        subjectData = subjectData.OrderBy(sortColumn + " " + sortColumnDir);
                    }
                    //Search    
                    if (!string.IsNullOrEmpty(searchValue)) { 
                        subjectData = subjectData.Where(m => m.CRN.ToString() == searchValue);
                    }

                    //total number of rows count     
                    recordsTotal = subjectData.Count();
                    //Paging     
                    var data = subjectData.Skip(skip).Take(pageSize).ToList();
                    //Returning Json Data    
                    return Json(new { draw, recordsFiltered = recordsTotal, recordsTotal});
                }

Any help would be greatly appreciated. Thanks!


Viewing all articles
Browse latest Browse all 1698

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>