La liaison de la base de données avec le kendo UI de la grille de ASP.NET MVC
Je suis en train de mettre en œuvre KendoUI Grid
de contrôle dans mon ASP.NET application MVC.
Je sais KendoUI les gars ont donné de nombreux exemples, mais sa ne fonctionne pas pour moi.
Mon Modèle de code est :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.SqlClient;
using System.Data.Sql;
using System.Data;
namespace KendoGrid.Models
{
public class status
{
public string SiteId { get; set; }
public string SiteName { get; set; }
public string SiteStatus { get; set; }
public static List<status> StatusInfo()
{
SqlConnection sconn = new SqlConnection(@"Data Source=DS-7071BC8FDEE6\SQLEXPRESS;Initial Catalog=AmanoTest;User ID=sa;Password=india@123");
SqlCommand cmd = new SqlCommand("select * from SiteMaster", sconn);
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
sda.Fill(dt);
status cstat;
List<status> statlist = new List<status>();
foreach (DataRow dr1 in dt.Rows)
{
cstat = new status();
cstat.SiteId = dr1[0].ToString();
cstat.SiteName = dr1[1].ToString();
cstat.SiteStatus = dr1[2].ToString();
statlist.Add(cstat);
}
return statlist;
}
}
}
Mon Contrôleur de Code est :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using KendoGrid.Models;
using Kendo.Mvc.UI;
namespace KendoGrid.Controllers
{
public class statusController : Controller
{
//
//GET: /status/
public ActionResult Index()
{
return View();
}
public ActionResult Site()
{
//List<status> status = status.GetStatus();
List<status> temp = status.StatusInfo();
ViewData["table"] = temp;
return View();
}
}
}
Et de mon point de vue (.cshtml page) est:
@model KendoGrid.Models.status
@using Kendo.Mvc.UI
@*@{
Layout = null;
}
*@
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Site</title>
</head>
<body>
<div>
@(Html.Kendo().Grid(Model)()
.Name("Grid")
.Columns(columns =>
{
columns.Bound(p => p.siteID);
columns.Bound(p => p.siteID);
columns.Bound(p => p.siteID);
})
.Pageable()
.Sortable()
.Scrollable()
.Filterable()
.DataSource(dataSource => dataSource
.Ajax()
.ServerOperation(false)
)
)
</div>
</body>
</html>
Sur l'exécution, il dit :
La meilleure méthode surchargée de match pour
'Le Kendo.Mvc.L'INTERFACE utilisateur.Couramment.WidgetFactory.Grille(Système D'.Les données.DataTable)' a
certains arguments non valides
- Vous êtes de passage à une Liste; mais la
Grid
est à la recherche d'un DataTable.
Vous devez vous connecter pour publier un commentaire.
Regarder comme vous êtes absent de couple de l'étape ici. Merci de passer par cette étape n cela pourrait résoudre votre problème
http://docs.kendoui.com/getting-started/using-kendo-with/aspnet-mvc/helpers/grid/ajax-binding