2013-05-10 3 views
1

Мне нужно привязать IEnumerable List к JQGrid с помощью ASP.NET MVC 2. В настоящее время у меня есть следующее.Как связать список IEnumerable с 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; } 
} 

Repository:

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> 

ответ

2

JQGrid нуждается в JSON. Существует действительно хороший учебник/расширение: http://blogs.teamb.com/craigstuntz/2009/04/15/38212/

После того, как вы используете это расширение, настройте JQGrid для загрузки данных.

Смежные вопросы