如何将IEnumerable List绑定到JQGrid

时间:2013-05-10 08:13:26

标签: asp.net asp.net-mvc asp.net-mvc-2 jqgrid jqgrid-asp.net

我需要使用ASP.NET MVC 2将IEnumerable List绑定到JQGrid。目前我有以下内容。

型号:

public class Client
    {
        public int ClientID { get; set; }
        [Required(ErrorMessage="Name Required")]
        [DisplayFormat(ConvertEmptyStringToNull = false)]
        public string Name { get; set; }
        public string Address { get; set; }
        public string Mobile { get; set; }
        public string Telephone { get; set; }
        public string Fax { get; set; }
        public string Company { get; set; }
}

存储库:

private StockDataClassesDataContext dc;
public IEnumerable<Client> GetClients()
        {

            dc = new StockDataClassesDataContext(ConString.DBConnection);

            IEnumerable<Client> cli = (from tbclient in dc.tblClients
                                        select new Client
                                         {
                                            Address = tbclient.Address,
                                            ClientID = tbclient.ClientID,
                                             Company = tbclient.Company,
                                             Fax= tbclient.Fax,
                                             Mobile = tbclient.Mobile,
                                             Name = tbclient.Name,
                                             Telephone = tbclient.Telephone
                                         });
            return cli;
        }

控制器:

 public ActionResult Index()
        {
            JqGridClientRepository rep = new JqGridClientRepository();
            IEnumerable<Client> clients = rep.GetClients();
            return View(clients);
        }

查看:

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
 <title>jqGrid for ASP.NET MVC - Demo</title>
    <!-- The jQuery UI theme that will be used by the grid -->    
    <link rel="stylesheet" type="text/css" media="screen" href="http://ajax.aspnetcdn.com/ajax/jquery.ui/1.10.0/themes/redmond/jquery-ui.css" />
    <!-- The Css UI theme extension of jqGrid -->
    <link rel="stylesheet" type="text/css" href="../../Content/themes/ui.jqgrid.css" />    
    <!-- jQuery library is a prerequisite for jqGrid -->
    <script src="http://ajax.microsoft.com/ajax/jquery/jquery-1.9.0.min.js" type="text/javascript"></script>
    <!-- language pack - MUST be included before the jqGrid javascript -->
    <script type="text/javascript" src="../../Scripts/trirand/i18n/grid.locale-en.js"></script>
    <!-- the jqGrid javascript runtime -->
    <script type="text/javascript" src="../../Scripts/trirand/jquery.jqGrid.min.js"></script>  


    <h2>Index</h2>





</asp:Content>

1 个答案:

答案 0 :(得分:2)

JQGrid需要JSON。有一个非常好的教程/扩展:http://blogs.teamb.com/craigstuntz/2009/04/15/38212/

使用此扩展程序后,配置JQGrid以下载数据。