繁体   English   中英

根据用户在 asp.net mvc 中输入的动态列选择

[英]Dynamic column selection as per user input in asp.net mvc

我向用户展示了一个屏幕,他可以在其中检查他想从数据库中获取哪些字段。 基于选中的复选框,我想使用 LINQ 或 lambda 表达式编写查询并在 ASP.NET MVC 中获取数据。 由于列选择是动态的,如何做到这一点? 例如,如果只选中 Name 和 Email 列,则仅从数据库中获取这 2 列的数据。

控制器

public ActionResult Report()
{
    return View();
}

[HttpPost]
public ActionResult Report(Employee emp)
{
    List<Employee> employees = new List<Employee>();

    employees = db.Employees.Select(x => new Employee()
                {
                    // select Only those columns which are checked by the user
                }).ToList();
    return View();
}

看法

 @model IEnumerable<DynamicCheck.Models.Employee> @{ ViewBag.Title = "EmployeeReport"; } <h2>EmployeeReport</h2> <form action="~/Employees/Report" method="post"> <div> <div class="col-lg-3"> <input type="checkbox" name="Name" /> <label>Employee Name</label> </div> <div class="col-lg-3"> <input type="checkbox" name="Email" /> <label>Employee Email</label> </div> <div class="col-lg-3"> <input type="checkbox" name="Address" /> <label>Employee Address</label> </div> <div class="col-lg-3"> <input type="checkbox" name="Phone" /> <label>Employee Name</label> </div> <input type="submit" value="Submit"/> </div> </form>

您应该使用 javascript 并检查发送到查看的列。 并动态创建 html 元素...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM