如何使用MVC 3 ASPX引擎来创建动态网格? [英] How to create dynamic Grid using mvc 3 aspx engine?

查看:156
本文介绍了如何使用MVC 3 ASPX引擎来创建动态网格?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是新来asp.net mvc的3.I我试图使用生成MVC3动态gridview的,但我不能产生网格。我的code以下:

I am new to asp.net mvc 3.I am trying to generate a dynamic gridview using mvc3 but i cannot produce grid. My code below:

模型:


  public class Employee
    {
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public double Salary { get; set; }
        public static List<Employee> GetList()
        {
            List<Employee> employees = new List<Employee>{
          new Employee   { FirstName="Rahul", LastName="Kumar", Salary=45000},
          new Employee   { FirstName="Jose", LastName="Mathews", Salary=25000},
          new Employee   { FirstName="Ajith", LastName="Kumar", Salary=25000},
          new Employee   { FirstName="Scott", LastName="Allen", Salary=35000},
            new Employee   { FirstName="Abhishek", LastName="Nair", Salary=125000}
            };
            return employees;
        }
    }

控制器


  public class EmployeeController : Controller
    {
        //
        // GET: /Employee/

        public ActionResult Index()
        {
            var empoyees = Employee.GetList();
            return View(empoyees);
        }

    }

查看:


<%
    var grid = new WebGrid(source: Model, defaultSort: "FirstName", rowsPerPage: 3);
    using (Html.BeginForm())
    {
        %>
        <div id="grid">
        <%:grid.GetHtml(tableStyle:"grid", 
        headerStyle:"head", 
        alternatingRowStyle:"alt",
        columns:grid.Columns(
        grid.Column("FirstName"),
        grid.Column("LastName"),
        grid.Column("Salary"))) %>
        </div>
        <%} %>

我想创建


grid.Column("FirstName"),
        grid.Column("LastName"),
        grid.Column("Salary"))

动态返回控制器动作。我如何返回动态列或动态的GridView或一些推广?

dynamically return controller action. How do I return dynamic column or dynamic gridview or extentions?

推荐答案

@programmerist,这是你的答案;)

@programmerist, This is your Answer ;)

@{
    var properties = typeof(MyModelClassName).GetProperties();
    var webGridColumns = properties.Select(prop => new WebGridColumn()
        {
            ColumnName = prop.Name, Header = prop.Name, Style = "my-style"
        }).ToList();

    var grid = new WebGrid(source: Model, rowsPerPage: 3);
    @grid.GetHtml(tableStyle: "grid",
                  headerStyle: "head",
                  alternatingRowStyle: "alt",
                  columns: webGridColumns)
}

这篇关于如何使用MVC 3 ASPX引擎来创建动态网格?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆