【问题标题】:Fill JS DataTable with conditions - Entity Framework MVC5用条件填充 JS DataTable - Entity Framework MVC5
【发布时间】:2020-02-18 17:01:34
【问题描述】:

我有一个包含 C#、EF 和 SQL Server 的 MV5 项目,我正在使用以下代码填充数据表(来自 datatables.net 参考):

public ActionResult GetData()
{
   using (Entity db = new Entity())
   {
      List<tableName> htmlTable = db.tableName.ToList<tableName>();
      return Json(new { data = htmltable }, JsonRequestBehavior.AllowGet);
   }
}

这带来了整个表,但我希望根据用户会话过滤这些(因此 userX “选择”仅他管理的行或 columnY 有任何过滤器的行),因此它运行如下查询:

SELECT * FROM tableName WHERE idUser = 'userX' AND columnY = 1;

我是否可以使用适应上述方法的过滤器将数据绑定到 DataTable,或者我必须更改数据绑定方法?

【问题讨论】:

    标签: c# sql-server asp.net-mvc


    【解决方案1】:

    您可以尝试如下查询所示。这是一个Basic LINQ Query Operations (C#) 参考学习给你。

    public ActionResult GetData()
    {
      using (Entity db = new Entity())
      {
         var htmltable = (from r in db.tableName WHERE r.idUser == "userX" &&
         r.columnY = 1
         select r).ToList();
         return Json(new { data = htmltable }, JsonRequestBehavior.AllowGet);
      }
    }
    

    【讨论】:

      【解决方案2】:

      您可以借助 linq 和 lambda 表达式在 tableName 上添加过滤器

      例如:

      var htmlTable = db.tableName.Where(d=>d.idUser=="userX" && 
      columnY==1).ToList<tableName>();
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-02-19
        • 1970-01-01
        • 1970-01-01
        • 2020-06-14
        • 1970-01-01
        相关资源
        最近更新 更多