目的:将数据库中大量数据传递给JQGrid显示在界面
技术:MVC4+JQGrid
步骤:1、创建model,读取数据库中的数据到DataSet,遍历每一行的数据并赋值给model中的实体对象,添加到List
2、将list数据转换为JSON数据,使用Jquer传递给JQGrid
实现过程:
将数据添加到list:
List<demoObject> demo = new List<demoObject>();
public string getAllInfo()
{
DataSet ds = DBhelper.getJsonInfo();
DataTable dt = ds.Tables["Base_Module"];
foreach (DataRow row in dt.Rows)
{
demo.Add(new demoObject(){ModuleId=row["ModuleId"].ToString(),ParentId=row["ParentId"].ToString(),Categroy=row["Category"].ToString(),Code=row["Code"].ToString(),FullName=row["FullName"].ToString(),Icon=row["Icon"].ToString(),Location=row["Location"].ToString(),Target=row["Target"].ToString(),Level=(int)row["Level"],Isexpand=(int)row["Isexpand"],AllowButton=(int)row["AllowButton"],AllowView=(int)row["AllowView"],AllowForm=(int)row["AllowForm"],Authority=(int)row["Authority"],DataScope=(int)row["DataScope"],Remark=row["Remark"].ToString(),Enabled=(int)row["Enabled"],SortCode=(int)row["SortCode"],DeleteMark=(int)row["DeleteMark"],CreateDate=row["CreateDate"].ToString(),CreateUserId=row["CreateUserId"].ToString(),CreateUserName=row["CreateUserName"].ToString(),ModifyDate=row["ModifyDate"].ToString(),ModifyUserId=row["ModifyUserId"].ToString(),ModifyUserName=row["ModifyUserName"].ToString()});
}
string json = ToJsJson(demo);
return json;
}
//将list转化为json数据的主要方法编辑以下方法之前需要添加引用
//System.Runtime.Serialization;先添加右键引用
//System.IO
public static string ToJsJson(object item)
{
DataContractJsonSerializer serializer = new DataContractJsonSerializer(item.GetType());
using (MemoryStream ms = new MemoryStream())
{
serializer.WriteObject(ms, item);
StringBuilder sb = new StringBuilder();
sb.Append(Encoding.UTF8.GetString(ms.ToArray()));
return sb.ToString();
}
}